Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для Disinterpreter
    Проверенный

    Статус
    Оффлайн
    Регистрация
    02.01.2014
    Сообщений
    88
    Репутация:
    91 ±

    Редактор кода "Vim" | Использование в Pawn

    Привет, народ!
    Это мой очередной очень сложный гайд/урок/называйте как хотите.
    И сегодня я расскажу вам об очень интересной проблеме.
    Итак, представьте, что у вас есть сервер, плагины которого есть только под Linux, а нужно под них что-то разработать, нам придется разрабатывать и компилировать под Linux, и этим гайдом я покажу как можно приблизить это к реальности (только вот это скорей для линуксойдов).
    Изначально, я хотел презентовать свои наработки, но подумал, можно добавить пару вещей.

    Для начала нужно поставить Vim пока всё просто: sudo apt-get update && sudo apt-get install vim.
    После чего установить Vundle. Vundle же ставится относительно нетрудно и гайды есть.
    Пример каноничного гайда: https://github.com/VundleVim/Vundle.vim#quick-start
     Для самых маленьких

    Выкачиваем Vundle этой командой, если нет гита то поставить: sudo apt-get install git
    git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
    Создаем файлик ~/.vimrc и в него вставляем
    Код:
    set nocompatible              " be iMproved, required
    filetype off                  " required
    
    " set the runtime path to include Vundle and initialize
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    " alternatively, pass a path where Vundle should install plugins
    "call vundle#begin('~/some/path/here')
    
    " let Vundle manage Vundle, required
    Plugin 'VundleVim/Vundle.vim'
    
    " The following are examples of different formats supported.
    " Keep Plugin commands between vundle#begin/end.
    " plugin on GitHub repo
    Plugin 'tpope/vim-fugitive'
    " plugin from http://vim-scripts.org/vim/scripts.html
    " Plugin 'L9'
    " Git plugin not hosted on GitHub
    Plugin 'git://git.wincent.com/command-t.git'
    " git repos on your local machine (i.e. when working on your own plugin)
    " The sparkup vim script is in a subdirectory of this repo called vim.
    " Pass the path to set the runtimepath properly.
    Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
    " Install L9 and avoid a Naming conflict if you've already installed a
    " different version somewhere else.
    " Plugin 'ascenator/L9', {'name': 'newL9'}
    
    " All of your Plugins must be added before the following line
    call vundle#end()            " required
    filetype plugin indent on    " required
    Ну и для уверенности можно зайти в Vim и ввести :PluginInstall

    Окей, Vundle мы поставили, теперь ставим то, что я писал поверх Vundle. Для этого мы клонируем содержимое репозитория https://github.com/Disinterpreter/vim-pawn.git в ~/.vim/bundle/
    Код:
    git clone https://github.com/Disinterpreter/vim-pawn.git ~/.vim/bundle/

    т.е директории compiler, fdetect, syntax должны лежать в папке vim-pawn которая лежит в bundle.

    Окей теперь можно настроить файл ~/.vimrc хотя я его и положил в своей репозиторить, но нужно оттуда взять самое важное это
    Код:
    syntax on
    set number
    set makeprg=pawncc\ %:r.pwn\ -i\/home/disi/samp03/pawn/include
    function! MakePawn()
      silent make | copen
      redraw!
    endfunction
    
    map <F5> :exec MakePawn()<CR>

    Важный момент: в set makeprg укажите пусть до ваших инклюдов.

    И перейдем к pawncc, в своем случае я взял pawn от Zeex, выкачал его репозиторий, собрал pawncc компилятор(cmake . && make) и положил его в /bin (sudo cp pawncc /bin)
    После чего прописал выше.

     На выходе у меня получилось это





    И видео: http://webmshare.com/wKxG0

    Автор: Disinterpreter

    P.S Вначале я решил просто попробовать сделать плагины для Vim, взял старый код для SourcePawn и адаптировал до SAMP репозиторий тут: https://github.com/Disinterpreter/vim-pawn


    Для всех кто считает, что этот урок несет смысловую нагрузку и хочет стянуть к себе на форум:
    Культурный обмен во все времена был одним из важных развлечений. (С) Татикома из "Призрак в доспехах: Синдром одиночки"

  2. 4 пользователя(ей) сказали cпасибо:
    Desulaid (14.08.2017) m1n1vv (14.08.2017) Mr_LemoneZ (14.08.2017) Web (14.08.2017)
  3. #2
    Аватар для Fallen A.
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Адрес
    Минск, БССР
    Сообщений
    236
    Репутация:
    19 ±
    Сор за оффтоп, но я думал, что ты покажешь, как выйти из vim. xD

  4. #3
    Аватар для Disinterpreter
    Проверенный

    Статус
    Оффлайн
    Регистрация
    02.01.2014
    Сообщений
    88
    Репутация:
    91 ±
    Цитата Сообщение от Fallen A. Посмотреть сообщение
    Сор за оффтоп, но я думал, что ты покажешь, как выйти из vim. xD
    https://stackoverflow.blog/2017/05/2...pers-exit-vim/
    Культурный обмен во все времена был одним из важных развлечений. (С) Татикома из "Призрак в доспехах: Синдром одиночки"

  5. #4
    Аватар для Fallen A.
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.09.2015
    Адрес
    Минск, БССР
    Сообщений
    236
    Репутация:
    19 ±
    Цитата Сообщение от Disinterpreter Посмотреть сообщение
    Сломал систему.

  6. #5
    Аватар для mapov
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2020
    Адрес
    Тула
    Сообщений
    1
    Репутация:
    0 ±
    Всем привет.

    Хочу внести свою лепту, поделиться русской версией справочника по Vim. https://r-notes.ru/administrirovanie...ravki-vim.html Думаю всем будет полезно, кто в теме.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •