I want to create a new file or directory with ranger. I suppose I could use mkdir or touch, but I'm not sure if these would go in the current directory as viewed in ranger.
- 320,670
- 36
- 633
- 936
- 5,178
- 5
- 40
- 80
4 Answers
- 4,209
- 14
- 22
- 32
- 5,178
- 5
- 40
- 80
-
but how can you see the result of the command? what if something went wrong (read only FS, access rights, etc)? – Oleg Kokorin Sep 20 '22 at 17:23
The accepted answer is correct, but someone might prefer to get these commands typed just by pressing one key. As @jaustin describes in his answer, one need to have keys mapped in ~/.config/ranger/rc.conf config file.
If you copied default configuration files by
ranger --copy-config=all
then you already have the shortest access to mkdir / touch:
- F7 - mkdir (config:
map <F7> console mkdir%space) - Insert - touch (config:
map <INSERT> console touch%space)
Mine current version of Ranger is 1.9.2.
BTW: extra space at the end of map c console touch␣ doesn't work. Only map c console touch%space will work.
- 388
- 3
- 5
You can use :touch somefile, but I prefer it mapped to a key.
:map c console touch (note the extra space at the end)
Place this at the bottom of your ~/.config/ranger/rc.conf minus the leading :
- 22,130
- 27
- 68
- 117
- 179
- 1
- 4
For creating a new file that you intend to immediately edit, using:
:edit new_file_name
is slightly faster. This will open the file in vim. Note that you'd need to save it in vim (e.g. with :w<CR>) before it appears (contrary to :touch, which will create the file immediately).
- 573
- 3
- 6