Есть ли плагин Vim для предварительного просмотра файлов markdown? [закрытый]
Мне нравится отмеченный и Mou редактор, который имеет большую возможность просматривать результаты рендеринга на лету. Вот и мне интересно, есть ли способ сделать то же самое в Vim?
10 ответов:
недавно я нашел расширение Chrome, которое позволяет Chrome правильно открывать и отображать файлы markdown:предварительный просмотр уценки.
тогда это был просто вопрос сопоставления ключа в Vim, чтобы открыть файл с Chrome. Мой выглядит так:
" Open markdown files with Chrome. autocmd BufEnter *.md exe 'noremap <F5> :!start C:\Users\tomas\AppData\Local\Google\Chrome\Application\chrome.exe %:p<CR>'
эта команда должна быть отредактирована, конечно, если ваши файлы не имеют расширения". md", вы хотите, чтобы ваше отображение на другом ключе или если Chrome находится в другом месте местоположение.
Теперь всякий раз, когда я редактирую файл ".md", я могу нажать
<F5>
открыть файл в Chrome. Идеальным решением было бы заставить Chrome автоматически перезагружаться каждые несколько секунд, но я не могу найти такое расширение, которое работает для локальных файлов.
плюсы:
- возможность нажать кнопку для предварительного просмотра файла markdown, без необходимости каких-либо запущенных серверов или специального кода.
- работает на всех платформах, которые поддерживает Vim и Chrome-который в значительной степени охватывает все платформы.
плюсы:
- нет автоматического обновления, вы должны нажать
<F5>
каждый раз, когда вы хотите, чтобы просмотреть файл.- без уценки со вкусом Github.
вам повезло - я только что написал плагин vim с предварительным просмотром Markdown в режиме реального времени. Он также использует уценку github и стили:https://github.com/suan/vim-instant-markdown
Я использую помеченные.приложение для просмотра Markdown файлов. И нанесли на карту
<leader>p
сделать предварительный просмотр:function! s:setupMarkup() nnoremap <leader>p :silent !open -a Marked.app '%:p'<cr> endfunction au BufRead,BufNewFile *.{md,markdown,mdown,mkd,mkdn} call s:setupMarkup()
Если вы не хотите, чтобы падение $4 на отмеченных.приложение, то вы можете попробовать молоток.ВИМ. Измените строку:
map <buffer> <leader>p :Hammer<CR>
вы можете использовать pandoc для компиляции в формат документа по вашему выбору и просмотра его с помощью внешней команды по умолчанию. Например, мне нравится просматривать его как pdf, и я использую следующую настройку на Ubuntu.
" pandoc , markdown command! -nargs=* RunSilent \ | execute ':silent !'.'<args>' \ | execute ':redraw!' nmap <Leader>pc :RunSilent pandoc -o /tmp/vim-pandoc-out.pdf %<CR> nmap <Leader>pp :RunSilent gnome-open /tmp/vim-pandoc-out.pdf<CR>
я компилирую документ с помощью
,pc
и предварительный просмотр с помощью,pp
. Так как в ubuntuevince
- Это программа просмотра по умолчанию и автоматически загружает измененные файлы. Вы в конечном итоге делаете только,pc
для отражения изменений.PS: у меня есть лидер, сопоставленный с ,
нет, есть несколько плагинов Vim для подсветки синтаксиса, фрагментов и так далее, но Vim отображает текст и только текст, поэтому У вас не может быть уценки (или любой другой вид) предварительный просмотр в Vim.
Если вы заинтересованы в режиме реального времени предварительного просмотра, может быть MarkdownPad подходит для ваших нужд лучше.
добавление к ответу @Codemonkey, если вы используете OSX, вы можете использовать следующее в своем .файл vimrc.
" Open markdown files with Chrome. autocmd BufEnter *.md exe 'noremap <F5> :!open -a "Google Chrome.app" %:p<CR>'
вот простой плагин vim для просмотра Markdown в Chrome - он не требует ruby или ничего необычного и обновит предварительный просмотр при записи в буфер vim (его также можно активировать с помощью горячей клавиши)
кроме того, предварительный просмотр происходит в фоновом режиме, поэтому вам никогда не придется покидать vim.
у меня есть функция в моей .ВИМ реж:
function! markdown#preview() silent update let output_name = tempname() . '.html' let file_header = ['<html>', '<head>', \ '<meta http-equiv="Content-Type" content="text/html; charset=utf-8">', \ '<title>'.expand('%:p').'</title>', \ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssreset/reset-min.css">', \ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssbase/base-min.css">', \ '<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/3.3.0/build/cssfonts/fonts-min.css">', \ '<style>body{padding:20px;}div#container{background-color:#F2F2F2;padding:0 20px;margin:0px;border:solid #D0D0D0 1px;}</style>', \ '</head>', '<body>', '<div id="container">'] call writefile(file_header, output_name) silent exec '!markdown "' . expand('%:p') . '" >> "' . output_name . '"' silent exec '!echo "</div></body></html>" >> "' . output_name . '"' silent exec '!sensible-browser "' . output_name . '" &' endfunction
С этим у меня тоже есть следующее сопоставление:
inoremap <buffer> <F7> <ESC>:call markdown#preview()<CR> nmap <buffer> <F7> :call markdown#preview()<CR>
это не идеально, и это не в реальном времени, но это достаточно хорошо для моих ограниченных потребностей.
я наткнулся на хороший плагин, который отлично работал из коробки https://github.com/waylan/vim-markdown-extra-preview