Utwórz nowy plik (.txt) w Finderze - skrót klawiaturowy

24

Chciałem wiedzieć, czy można ustawić skróty klawiaturowe, aby tworzyć nowe pliki w Finderze. Na przykład domyślnie możesz utworzyć nowy folder za pomocą CMD+ Shift+ N. Czy istnieje skrót klawiaturowy, aby utworzyć nowy plik tekstowy? Jestem programistą, więc byłoby to bardzo przydatne

Byłbym także zainteresowany tworzeniem innego typu pliku za pomocą skrótów klawiaturowych.

Próbowałem użyć automatyzatora, ale wydaje mi się, że jest to dość mylące i nie jestem pewien, jak podłączę do niego skrót klawiaturowy.

Złupić
źródło

Odpowiedzi:

21

Cóż, tutaj masz do tego AppleScript.

Najpierw utwórz AppleScript:

  1. Otwórz Automator
  2. Utwórz szybką akcję
  3. Ustaw wejście na brak wejścia
  4. Przeciągnij i upuść element Przepływ pracy Uruchom AppleScript na szarej przestrzeni.
  5. Wklej kod od dołu do AppleScript
  6. Zapisz przepływ pracy jako Utwórz nowy plik
    Jeśli masz aktywowany iCloud Drive, upewnij się, że zapisałeś plik Library/Services/w folderze domowym.

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 & "\""

Aby dodać go jako skrót:

  • Przejdź do Preferencji systemowych -> Klawiatura -> Skróty -> Usługi
  • Przewiń w dół, aż znajdziesz usługę Utwórz nowy plik
  • Przypisz do niego skrót, klikając po prawej stronie brak , co zmienia się w Add Shortcut.
    Kliknij przycisk i wpisz skrót, którego chcesz użyć.
    Używam ⌘ Command+ ⌥ Option+N
rwenz3l
źródło
2
Nie rozumiem, jak ustawić skrót do tego konkretnego skryptu za pomocą karty usług
Harry
Dodałem bardziej szczegółowy sposób dodawania tego skryptu jako skrótu.
rwenz3l
Teraz powinien również działać z pustymi folderami. Przynajmniej to działa dla mnie. Możesz zapisać plik szablonu w skrypcie „filename.txt”.
rwenz3l
7
Dlaczego nie mają czegoś takiego domyślnie? Co się z nimi dzieje?
G.Rassovsky
11

Stworzyłem AppleScript bardzo podobny do @ YoshiBotX, ale z pewnymi ulepszeniami.

Pomysł polega na utworzeniu przepływu pracy Automatora i przypisaniu do niego skrótu, wykonując następujące czynności:

  • Otwórz Automator i utwórz usługę ;
  • Ustaw dane wejściowe na brak danych wejściowych , a aplikacja na Finder.app ;
  • Przeciągnij i upuść element przepływu pracy Uruchom AppleScript na szarej przestrzeni;
  • Umieść zawartość tego AppleScript w polu tekstowym;
  • Zapisz przepływ pracy z rozsądną nazwą (np. Nowy plik );
  • Przejdź do Ustawienia -> Klawiatura -> Skróty -> Usługi i przypisz do niego skrót.

Teraz pokażmy 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

Dla wygody umieszczam ten AppleScript w tej GitHub Gist .

Rarylson Freitas
źródło
1
Świetny scenariusz, dziękuję. Jedyną rzeczą, którą dodałbym do tego zapisu, aby był on bardziej kompletny, jest informacja instruująca nowych użytkowników Automatora, że ​​powinni oni zapisać skrypt przepływu pracy, który tworzą ~/Library/Services. (Moje domyślne ustawienie było włączone iCloud Drive\Automatori zajęło mi trochę badań, aby dowiedzieć się, gdzie go zapisać, aby pojawił się w obszarze Usługi w skrótach klawiaturowych.)
Colin Johnston
3

Możesz samodzielnie utworzyć usługę Automator - jest to dość proste. Następnie możesz przypisać do niego skrót klawiaturowy, aby nie trzeba było aktywować usługi za pośrednictwem menu usług (co możesz zrobić i tak).

Otwórz Automator i wybierz Service jako typ nowego dokumentu.

Ustaw usługę, aby nie otrzymywała danych wejściowych w Finder.app i dodaj akcję Nowy dokument TextEdit do przepływu pracy.

Przepływ pracy

Zapisz usługę, a następnie otwórz Preferencje systemowe → Klawiatura → Skróty → Usługi, gdzie znajdziesz usługę wymienioną na liście Ogólne z nazwą, którą nadałeś dla usługi podczas jej zapisywania.

Usługi

Dodaj skrót klawiaturowy do usługi, wybierając usługę, a następnie klikając „dodaj skrót”.

Tutaj możesz mieć problemy, jeśli skrót jest już używany. Bądź kreatywny, aby stworzyć taki, który działa dla Ciebie.

Ruskes
źródło
3

Możesz także przypisać skrót do takiego skryptu :

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

Lokalizacja wstawiania jest albo celem okna Findera znajdującego się z przodu lub pulpitem.

Lri
źródło
Twój kod jest tak prosty i użyteczny! Używam Automatora do tworzenia aplikacji, która ma tylko jedną akcję: Uruchom AppleScript z twoim kodem. Następnie umieszczam tę aplikację w pasku tytułowym Findera. W porządku. kiedy będę potrzebować, po prostu kliknij, a nowy plik zostanie utworzony w bieżącym folderze.
fantouch
2

otwórz terminal i typ

touch filename

lub

> filename
rękawy
źródło
zgubiłeś mnie tutaj? co to robi
Ruskes
3
Czy możesz rozwinąć sposób dodawania skrótu klawiaturowego do tego polecenia? (@Buscar See touch )
grg
1
cóż, jeśli masz PathFinder - to naprawdę świetna opcja; D
rwenz3l
Działa to całkiem nieźle z cmd2shell. Brak skrótu, wystarczy kliknąć przycisk cmd2shell w wyszukiwarce i wpisać polecenie dotykowe.
eflat
Szukałem czegoś bardziej kompatybilnego z Finderem w OSX.
Harry,
0

To jest post postu, który napisałem w zeszłym roku. Miałem dobre doświadczenia z następującymi kwestiami.

Istnieją dwa przydatne narzędzia, które można pobrać i zainstalować, które umożliwią utworzenie nowego pliku tekstowego (lub pliku RTF) w aktualnie otwartym folderze przeglądanym za pomocą Findera.

Narzędzia nazywają się NewTextFileHere i NewRTFHere i można je pobrać z

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

Ikony każdej z tych aplikacji można następnie dołączyć do wszystkich okien Findera.

Richard Fuhr
źródło
0

Alternatywnie, jeśli masz już BetterTouchTools (była to bezpłatna aplikacja, teraz ma model płatnej usługi z 30-dniowym okresem próbnym), możesz znaleźć akcję, "Utility Actions > Create New File in Current Folder"która właśnie to robi, z wyskakujące okienko, które pozwala wybrać nazwę. Przypisz żądany skrót (wybrałem Option + Shift + N) i możesz zacząć.

Zequez
źródło
0

W przypadku korzystania z MacVima istnieje opcja Finder -> Servicesutworzenia nowego bufora vim:

wprowadź opis zdjęcia tutaj

Odwzorowałem to na skrót ShiftcmdMw System Preferences -> Keyboard -> Shortcuts:

wprowadź opis zdjęcia tutaj

Tidbeck
źródło