Создать новый (.txt) файл в Finder - Сочетание клавиш

24

Я хотел знать, есть ли способ установить сочетания клавиш для создания новых файлов в Finder. Например, по умолчанию вы можете создать новую папку, используя CMD+ Shift+ N. Есть ли сочетание клавиш для создания нового текстового файла? Я программист, так что это было бы очень полезно

Я также был бы заинтересован в создании файлов другого типа с помощью сочетаний клавиш.

Я пытался использовать automator, но я нахожу его довольно запутанным, и я не уверен, как бы я подключил к нему комбинацию клавиш.

Гарри
источник

Ответы:

21

Ну, вот вам и AppleScript для этого.

Сначала создайте AppleScript:

  1. Открыть Автоматор
  2. Создать быстрое действие
  3. Установите вход без ввода
  4. Перетащите элемент рабочего процесса « Выполнить AppleScript» в серое пространство.
  5. Вставьте код снизу в AppleScript
  6. Сохраните рабочий процесс как Создать новый файл.
    Если у вас активирован iCloud Drive, убедитесь, что вы сохраняете файл Library/Services/в вашей Домашней папке.

try
  tell application "Finder" to set the this_folder ¬
   to (folder of the front window) as alias
on error -- no open folder windows
  set the this_folder to path to desktop folder as alias
end try

set thefilename to text returned of (display dialog ¬
 "Create file named:" default answer "filename.txt")
set thefullpath to POSIX path of this_folder & thefilename
do shell script "touch \"" & thefullpath & "\""

Чтобы добавить его в качестве ярлыка:

  • Перейдите в Системные настройки -> Клавиатура -> Ярлыки -> Услуги
  • Прокрутите вниз, пока не найдете сервис Создать новый файл
  • Назначьте ему ярлык, щелкнув по правой стороне ничего , что превращается в Add Shortcut.
    Нажмите кнопку и введите ярлык, который вы хотите использовать.
    Я использую ⌘ Command+ ⌥ Option+N
rwenz3l
источник
2
Я не понимаю, как установить ярлык для этого конкретного сценария через вкладку служб
Гарри
Я добавил более подробный способ добавления этого скрипта в качестве ярлыка.
rwenz3l
Теперь он должен работать и с пустыми папками. По крайней мере, это работает для меня. Вы можете написать свой файл шаблона внутри скрипта "filename.txt".
rwenz3l
См. Также superuser.com/questions/106943/…
мемы
7
Почему они не имеют что-то подобное по умолчанию? Что с ними?
Г.Рассовский
11

Я создал AppleScript, очень похожий на @ YoshiBotX, но с некоторыми улучшениями.

Идея состоит в том, чтобы создать рабочий процесс Automator и назначить ему ярлык, используя следующие шаги:

  • Откройте Automator и создайте Сервис ;
  • Установите для входа отсутствие ввода , а для приложения - Finder.app ;
  • Перетащите элемент рабочего процесса « Выполнить AppleScript» в серое пространство;
  • Поместите содержимое этого AppleScript в текстовое поле;
  • Сохраните рабочий процесс с разумным именем (например, Новый файл );
  • Перейдите в « Настройки» -> «Клавиатура» -> «Ярлыки» -> «Службы» и назначьте ему ярлык.

Теперь давайте покажем AppleScript:

set file_name to "untitled"
set file_ext to ".txt"
set is_desktop to false

-- get folder path and if we are in desktop (no folder opened)
try
    tell application "Finder"
        set this_folder to (folder of the front Finder window) as alias
    end tell
on error
    -- no open folder windows
    set this_folder to path to desktop folder as alias
    set is_desktop to true
end try

-- get the new file name (do not override an already existing file)
tell application "System Events"
    set file_list to get the name of every disk item of this_folder
end tell
set new_file to file_name & file_ext
set x to 1
repeat
    if new_file is in file_list then
        set new_file to file_name & " " & x & file_ext
        set x to x + 1
    else
        exit repeat
    end if
end repeat

-- create and select the new file
tell application "Finder"

    activate
    set the_file to make new file at folder this_folder with properties {name:new_file}
    if is_desktop is false then
        reveal the_file
    else
        select window of desktop
        set selection to the_file
        delay 0.1
    end if
end tell

-- press enter (rename)
tell application "System Events"
    tell process "Finder"
        keystroke return
    end tell
end tell

Для удобства я помещаю этот AppleScript в этот GitHub Gist .

Рарилсон Фрейтас
источник
1
Отличный сценарий, спасибо. Единственное, что я хотел бы добавить к этой статье, чтобы сделать ее более полной, - это информация, указывающая новым пользователям Automator, что сценарий рабочего процесса, который они создают, должен быть сохранен ~/Library/Services. (По умолчанию у меня было значение по умолчанию, iCloud Drive\Automatorи мне потребовалось небольшое исследование, чтобы выяснить, где его сохранить, чтобы оно появилось в разделе «Службы в сочетаниях клавиш».)
Колин Джонстон
3

Вы можете создать службу Automator самостоятельно - это довольно просто сделать. Затем вы можете назначить ему сочетание клавиш, чтобы вам не нужно было активировать сервис через меню сервисов (что вы можете сделать в любом случае).

Откройте Automator и выберите Сервис в качестве типа нового документа.

Настройте службу на отсутствие ввода в Finder.app и добавьте действие New TextEdit Document в рабочий процесс.

Workflow

Сохраните службу, затем откройте «Системные настройки» → «Клавиатура» → «Ярлыки» → «Службы», где вы найдете службу, указанную в разделе «Общие», с названием, которое вы указали для службы при ее сохранении.

Сервисы

Добавьте сочетание клавиш к сервису, выбрав сервис и нажав «Добавить ярлык».

Здесь могут возникнуть некоторые проблемы, если ярлык уже используется. Так что будьте изобретательны, чтобы сделать тот, который работает для вас.

Ruskes
источник
3

Вы также можете назначить ярлык для скрипта следующим образом:

tell application "Finder"
    set selection to make new file at (get insertion location)
end tell

Место вставки является целью самого переднего окна Finder или рабочего стола.

LRI
источник
Ваш код так прост и полезен! Я использую Automator для создания Приложения, для которого есть только одно действие: Запустите AppleScript с вашим кодом. Затем я положил это приложение в Finder Titlebar. Ничего страшного. когда мне нужно, просто нажмите, и новый файл будет создан в текущей папке.
fantouch
2

открыть терминал и набрать

touch filename

или

> filename
shotsleeves
источник
ты потерял меня здесь? что это делает?
Рускес
3
Не могли бы вы рассказать о том, как добавить комбинацию клавиш к этой команде? (@Buscar See touch )
grg
1
хорошо, если у вас есть PathFinder - это действительно отличный вариант; D
rwenz3l
Это прекрасно работает с cmd2shell. Нет ярлыка, но просто нажмите кнопку cmd2shell в Finder и введите команду touch.
eflat
Я искал что-то более совместимое с Finder в OSX.
Гарри
0

Это репост поста, который я сделал в прошлом году. У меня был хороший опыт со следующим.

Вы можете скачать и установить две полезные утилиты, которые позволят вам создать новый текстовый файл (или файл RTF) в открытой в данный момент папке, которую вы просматриваете с помощью Finder.

Утилиты называются NewTextFileHere и NewRTFHere и могут быть загружены с

http://mac.softpedia.com/developer/Jonas-Wisser-37498.html

Значки любого из этих приложений могут быть включены во все окна Finder.

Ричард Фур
источник
0

Именно то, что я искал, Ричард Фур. Спасибо за это.

Одно замечание: ссылка на этот URL для NewTextFileHere, похоже, загружается на пустую страницу. Но я сделал поиск и нашел приложение здесь: http://mac.softpedia.com/progDownload/NewTextFileHere-Download-70374.html

мозговой тоник
источник
0

В качестве альтернативы, если у вас уже есть BetterTouchTools (раньше это было бесплатное приложение, теперь у него есть модель «плати сколько хочешь» с 30-дневным пробным периодом), вы можете найти действие, на "Utility Actions > Create New File in Current Folder"котором это делается именно с помощью всплывающее окно, чтобы вы могли выбрать имя. Назначьте нужный ярлык (я выбрал Option + Shift + N) и все готово.

Zequez
источник
0

В случае, если вы используете MacVim, есть опция Finder -> Servicesдля создания нового буфера vim:

введите описание изображения здесь

Я сопоставил это с сокращением ShiftcmdMв System Preferences -> Keyboard -> Shortcuts:

введите описание изображения здесь

tidbeck
источник