Переключаясь от TextMate до Vim, я хотел бы запустить Vim и открытие определенной папки при запуске на MacOS?
Вручную я могу запустить Vim с оболочки с mvim someFolder
. Я использую MacOS 10.6 и NERDTree.
Спасибо!
Править:
При чтении и попытке применить предложенные ответы (спасибо между прочим) я понимаю, что был, вероятно, не достаточно ясен в своем вопросе:
Я хочу MacVim, автоматически запущенного при запуске, и с открытием определенной моей папки. Позже во время моей сессии MacOS, если по какой-либо причине я открываю снова MacVim, я не хочу, чтобы она открыла эту определенную папку, я хочу поведение значения по умолчанию MacVim.
Я мог сделать это с TextMate путем движения в Системное Предпочтение MacOS, Учетные записи, Объекты Входа в систему и добавления здесь моего файла проекта TextMate. Поскольку этот файл проекта был связан с TextMate, было достаточно запустить TextMate автоматически при запуске и отображающий этот список файлов проекта.
Существует ли способ достигнуть этого с Vim?
Если Вы хотите, чтобы MacVim открыл папку каждый раз, когда Вы могли бы также добавить псевдоним к Вашему .profile
или .bashrc
как это:
alias vimm='mvim /path/to/some/folder'
Таким образом, можно все еще запустить MacVim для некоторой задачи, не связанной с содержанием папки (как редактирование Вашего .profile
или некоторый файл конфигурации) с постоянным клиентом mvim
команда.
Для создания этого запуска при запуске необходимо будет перейти через некоторые обручи.
.vims
как расширение:Откройте MacVim и откройте любой/весь из files/tabs/NERDTrees, которые требуется иметь открытый. Сохраните это к сессии с .vims
расширение:
mksession! ~/Desktop/project.vims
Это может войти в любой каталог, который Вы хотели бы, я просто использую Рабочий стол для простоты использования.
Откройте Automator и создайте новое Пользовательское приложение. Добавьте "Выполненный Сценарий оболочки" действие к Вашему рабочему процессу. Измените Shell на /usr/bin/ruby
, и измените "Вход передачи" на "как аргументы", затем вставьте этот код в орган по действию:
file_name = ARGV[0].split(' ').join('\ ')
command = %Q!/usr/local/bin/mvim -S "#{file_name}"!
system(command)
Проверьте местоположение mvim
с which
, и обновление по мере необходимости. Сохраните рабочий процесс (я вставил его ~/Desktop/SU
) и измените "Формат файла" на "Приложение".
.vims
файлы.Щелкните правой кнопкой по ~/Desktop/project.vims
и выберите, "Получают Информацию". Под "Открытым с": выберите свое Приложение Automator и скажите ему "Изменять Все...".
Предпочтения Открытой системы, Учетные записи, Ваш Пользователь и выбор вкладка "Login Items". Перетащите Ваш ~/Desktop/project.vims
файл в список.
Выйдите из системы и въезжайте задним ходом, и MacVim должен открыться автоволшебно.
По некоторым причинам Automator продолжает бежать, в то время как эта сессия, если VIM активен. Если кто-либо знает, как зафиксировать это, сообщите мне.
Можно создать applescript, чтобы выполнить команду оболочки и добавить его к объектам запуска
-- Open MacVim
do shell script "/path/to/mvim /path/to/folder"
или
-- Open Vim on the terminal
tell application "Terminal"
activate
do script "/path/to/vim /path/to/folder"
end tell
использование Редактора AppleScript.
То, что я нахожу самыми полезными, должно открыть файлы проекта на вкладках с помощью NERDTree и затем сделать файл сессии:
mksession! project.vim
Восклицательный знак должен перезаписать предыдущий project.vim, должен Вы добавлять новый файл к проекту. Затем каждый раз, когда я хочу разжечь энергию, я просто должен звонить:
vim -S project.vim
Я предполагаю, что Вы могли получить project.vim непосредственно в vimrc для более автоматизированного подхода.