NOTEPAD++ -> PAWNPAD++ ОБНОВЛЕНИЕ ОТ 6 Декабря 2013
Здорова всем кто любит вносить новшества в геймплей своими грязными ручками, с помощью чудесного языка Pawn
1. Адаптирован русский язык.
2. Адаптировал язык sourcemod.
3. Добавил компилятор, при нажатии на клавишу F9, ваш плагин будет скомпилирован рядом со скриптом.
Пример:
4. При нажатии на Alt+F9 Ваш скрипт скопируется в папку plugins вашего удаленного сервера. - Для этого вы должны настроить конфиг файл "PawnPad++\plugins\Config\npes_saved.txt", откройте его и найдите двадцатую строчку, выглядит она вот так:
Command line flags: -u XX Use username XX instead of anonymous. -p XX Use password XX with the username. -P XX Use port number XX instead of the default FTP service port (21). -j XX Use account XX in supplement to the username and password (deprecated). -d XX Use the file XX for debug logging. -a Use ASCII transfer type instead of binary. -m Attempt to make the remote destination directory before copying. -t XX Timeout after XX seconds. -U XX Use value XX for the umask. -v/-V Do (do not) use progress meters. The default is to use progress meters if the output stream is a TTY. -f XX Read the file XX for host, user, and password information. -c Read locally from standard input and write remotely to specified pathname. -C Similar to -c, except a local pathname is specified rather than reading from standard input. -A Append to remote files, instead of overwriting them. -T XX Upload into temporary files prefixed by XX. -S XX Upload into temporary files suffixed by XX. -R Recursive mode; copy whole directory trees. -r XX Redial a maximum of XX times until connected to the remote FTP server. -z/-Z Do (do not) try to resume transfers. The default is to not try to resume (-Z). -E Use regular (PORT) data connections. -F Use passive (PASV) data connections. The default is to use passive, but to fallback to regular if the passive connection fails or times out. -DD Delete local file after successfully uploading it. -y Try using "SITE UTIME" to preserve timestamps on remote host. Not many remote FTP servers support this, so it may not work. -b Run in background (by submitting a job to ncftpbatch). -bb Similar to -b option, but only submits the batch job. You will need to run ncftpbatch for the batch job to be processed. This is useful if you already have a ncftpbatch process running, or wish to have better control of when batch jobs are processed. For example, if you wanted to do background processing of three files all on the same remote server, it is more polite to use just one ncftpbatch process to process the three jobs sequentially, rather than having three ncftpbatch processes open three simultaneous FTP sessions to the same server.
-B XX Try setting the TCP/IP socket buffer size to XX bytes. -W XX Send raw FTP command XX after logging in. -X XX Send raw FTP command XX after each file transferred. -Y XX Send raw FTP command XX before logging out. The -W, -X, and -Y options are useful for advanced users who need to tweak behavior on some servers. For example, users accessing mainframes might need to send some special SITE commands to set blocksize and record format information.
For these options, you can use them multiple times each if you need to send multiple commands. For the -X option, you can use the cookie %s to expand into the name of the file that was transferred.
-o XX Set advanced option XX. This option is used primarily for debugging. It sets the value of an internal variable to an integer value. An example usage would be: -o useFEAT=0,useCLNT=1 which in this case, disables use of the FEAT command and enables use of the CLNT command. The available variables include: usePASV, useSIZE, useMDTM, useREST, useNLST_a, useNLST_d, useFEAT, useMLSD, useMLST, useCLNT, useHELP_SITE, useSITE_UTIME, STATfileParamWorks, NLSTfileParamWorks, require20, allowProxyForPORT, doNotGetStartCWD.
Description
The purpose of ncftpput is to do file transfers from the command-line without entering an interactive shell. This lets you write shell scripts or other unattended processes that can do FTP. It is also useful for advanced users who want to send files from the shell command line without entering an interactive FTP program such as ncftp.
By default the program tries to open the remote host and login anonymously, but you can specify a username and password information. The -u option is used to specify the username to login as, and the -p option is used to specify the password. If you are running the program from the shell, you may omit the -p option and the program will prompt you for the password.
Using the -u and -p options are not recommended, because your account information is exposed to anyone who can see your shell script or your process information. For example, someone using the ps program could see your password while the program runs.
You may use the -f option instead to specify a file with the account information. However, this is still not secure because anyone who has read access to the information file can see the account information. Nevertheless, if you choose to use the -f option the file should look something like this:
host sphygmomanometer.ncftp.com user gleason pass mypasswd Don't forget to change the permissions on this file so no one else can read them. The -d option is very useful when you are trying to diagnose why a file transfer is failing. It prints out the entire FTP conversation to the file you specify, so you can get an idea of what went wrong. If you specify the special name stdout as the name of the debugging output file, the output will instead print to the screen.
Using ASCII mode is helpful when the text format of your host differs from that of the remote host. For example, if you are sending a text file from a UNIX system to a Windows-based host, you could use the -a flag which would use ASCII transfer mode so that the file created on the Windows machine would be in its native text format instead of the UNIX text format.
You can upload an entire directory tree of files by using the -R flag. Example:
$ ncftpput -R pikachu.nintendo.co.jp /incoming /tmp/stuff This would create a /incoming/stuff hierarchy on the remote host. The -T and -S options are useful when you want to upload file to the remote host, but you don't want to use the destination pathname until the file is complete. Using these options, you will not destroy a remote file by the same name until your file is finished. These options are also useful when a remote process on the remote host polls a specific filename, and you don't want that process to see that file until you know the file is finished sending. Here is an example that uploads to the file /pub/incoming/README, using the filename /pub/incoming/README.tmp as a temporary filename:
$ ncftpput -S .tmp bowser.nintendo.co.jp /pub/incoming /a/README A neat way to pipe the output from any local command into a remote file is to use the -c option, which denotes that you're using stdin as input. The following example shows how to make a backup and store it on a remote machine:
5. Так же адаптировал авто-заполнение, то есть если вы например напишите "OnC" то вам будут предложены варианты, к примеру OnClietnPutInServer и т.п... Пример:
6. Дополнил многими библиотеками (include), для того что бы при написании вам не приходилось замарачиваться и искать библиотеку, теряя творческую мысль
7. Добавил плагин compire с помощью которого вы без труда сможите сравнить два похожих скрипта и найти отличие. Пример:
8. Еще добавил свою тему оформления, это конечно дело вкуса, кто то любит на белом фоне кто то еще как, у всех вкусы разные, ну а мне так нравится, по этому, если кого то не устраивает этот стиль оформления, вы без труда сможете поменять его в настройках. Нажимаете "Синтаксис", далее "Создать свой язык", далее выбираете "sourcemod", (примечание, не меняйте название, иначе авто-заполнение перестанет работать). Сохранение изменений находиться в файле "userDefineLang.xml". Еще на оформление влияет "Стиль", не буду вдаваться, кому надо, тот найдет, находиться он в "Опции" и "Определение Стилей", там все просто.
9. Для тех у кого PawnPad++ не появляется в контекстовом меню или не регистрирует система формат .sp, добавил в корневую папку Reg_Formats.reg, нажмите на нем правую кнопку мышки, выберете пункт "Изменить", найдите строку @="\"D:\\PawnPad++\\pawnpad++.exe\" \"%1\"" и впишите свой путь, сохраните изменения и запустите Reg_Formats.reg, после чего он попросит внести изменения в систему, нажмите "ДА", теперь Ваш PawnPad++ будет отображен в контекстовом меню.
10. Спасибо butaford за хорошие идеи, вот одна из них:
Цитатаbutaford ()
Для тех у кого сервер на VDS, передать файл можно по протоколу SSH. InstallPluginFT.zip
В дальнейшем я надеюсь вы мне поможете перевести комментарии к авто-заполнению и предложить в этой теме свои стили, это было бы очень здорово, файл отвечающий непосредственно за подкрашивание "userDefineLang.xml".
Теперь вам не надо тратить время на настройку и адаптирования notepad++ под sourcemod а так же вы без труда можете копировать в любую директорию свой инструмент для создания скриптов не беспокоясь что, что то слетит.. Отличных Вам скриптов ребят и не забываем сказать спасибо.
Примечание: Если вы создаете новый блокнот внутри нотепада, не забывайте выбрать синтаксис "sourcemod"
Обновление от 10.04.13: - добавлен OnClientRunCmd в авто-заполнение и описание к нему. - добавлена возможность компилирования плагина на удаленный сервер. (by butaford) - добавлена горячая клавиша ALT+F9 для компилирования плагина возле скрипта.
Обновление от 11.04.13: - Улучшена тема оформления, достаточно заменить два файла из архива userDefineLang.xml и stylers.xml. - Добавлен AddCommandListener в авто-заполнение и описание к нему. Достаточно заменить свой sourcemod.xml на новый из архива. Файл находиться по адресу PawnPad++\plugins\APIs\sourcemod.xml.
Обновление от 04.12.13: - Возможность компилировать скрипт с любой директории. - Возможность компилировать скрипт на хостинг, без батников. - Обновлены плагины и нотепад до 6.5.1 версии. - и .т.п...
Обновление от 06.12.13: - Усовершенствована интеграция компиляции. - Добавлен синтаксис.
Спасибо, по мне куда лучше чем обычный notepad++ с подсветкой синтаксиса)). И вот вопрос, можно ли в userDefineLang сделать так, что бы допустим когда в строке с текстом
Код
PrintToChat(client, "\x03Тест!")
стоит \x01 - это желтый, \x04 - зеленый, \x03 - lightgreen/red/blue/grey и т.д. И какой файл отвечает за авто-заполнения?
Сообщение отредактировал dron216 - Вторник, 09.04.2013, 23:11:14
Пожалуйста) 1. Можно легко сделать, только операторы кавычек придется тебе убрать, а это уже не есть гуд, потому что все что в кавычках, красится одним цветом. Попробуй в общем убери операторы в синтаксисе и добавь свои услови, там все достаточно просто, это находится в файле PawnPad++\userDefineLang.xml если хочешь редактировать в ручную или можно непосредственно через программу, СИНТАКСИС -> СОЗДАТЬ СВОЙ ЯЗЫК -> выбираешь sourcemod и там все интуитивно понятно.
2. За авто-заполнение отвечает файл PawnPad++\plugins\APIs\sourcemod.xml В нем все коментарии и прочее ) я его уже дополнил подсказками, к примеру на хукевенты, что нужно писать в mode и т.п. В дальнейшем буду дополнять для удобства и конечно со временем на русский язык переведу, может кто из Вас поможет с этим) ну и с красивыми темками тоже)
Сообщение отредактировал Sunday - Вторник, 09.04.2013, 23:25:13
Sunday, придумал способ установки скомпиленных плагинов через FTP, можно прикрутить например к F11. Не понятно, пиши в ЛС. Добавлено (10.04.2013, 17:52:38) --------------------------------------------- можно попробовать настроить через встроенный в windows, ftp клиент
Гости не могут скачивать файлы
Сообщение отредактировал butaford - Среда, 10.04.2013, 19:08:05
Sunday, придумал способ установки через FTP на сервер, можно прикрутить например к F11. Не понятно, пиши в ЛС.
Прикрепления: InstallPluginFT.zip(81Kb)
Я полностью разобрался! Спасибо, это очень классная идея, я раньше думал как это можно сделать, так руки и не дошли. Очень здорово, классно придумал, обязательно добавлю и подпишу авторство идеи
Ну еще один штрих, для тех кто хочет чтобы редактор был интегрирован в контекстное меню проводника windows
Добавлено (10.04.2013, 19:26:07) --------------------------------------------- ах еще идейка :-D, все таки наверное, может добавить "быструю компиляцию", чтобы скомпилированный файл появлялся рядом с исходником, например на клавишу Alt+F9? Нет? Ну ладно... а я себе добавлю :-D
Ну еще один штрих, для тех кто хочет чтобы редактор был интегрирован в контекстное меню проводника windows Добавлено (10.04.2013, 19:26:07) --------------------------------------------- ах еще идейка :-D, все таки наверное, может добавить "быструю компиляцию", чтобы скомпилированный файл появлялся рядом с исходником, например на клавишу Alt+F9? Нет? Ну ладно... а я себе добавлю :-D
Это отличные идеи! Я по логике вещей добавил так, по скольку f10 это копирование на домашний сервер то alt+f10 это на хостинг и прямо сейчас добавлю alt+f9 что бы рядом появлялся, по логике вещей это тоже будет верно! Еще раз спасибо за инциативу, сейчас сделаю, нужно будет перескачать.
Добавлено (10.04.2013, 20:26:11) --------------------------------------------- ОБНОВИЛ - добавлен OnClientRunCmd в авто-заполнение и описание к нему. - добавлена возможность компилирования плагина на удаленный сервер. (by butaford)
Добавлено (11.04.2013, 03:13:20) --------------------------------------------- ОБНОВИЛ - Улучшена тема оформления, достаточно заменить два файла из архива userDefineLang.xml и stylers.xml. - Добавлен AddCommandListener в авто-заполнение и описание к нему. Достаточно заменить свой sourcemod.xml на новый из архива. Файл находиться по адресу PawnPad++\plugins\APIs\sourcemod.xml.
cd $(CURRENT_DIRECTORY) "scripting\spcomp.exe" "$(FILE_NAME)" xcopy "$(CURRENT_DIRECTORY)\$(NAME_PART).smx" "$(NPP_DIRECTORY)\scripting\compiled" /Y
Добавленная строчка копирует скомпилированный скрипт в паку compiled, откуда его можно будет установить на сервер по FTP или SSH Можно прописать на отдельную горячую клавишу и пользоваться при необходимости или можно добавить строку копирования в NppExec -->InstallPluginFTP (InstallPluginSSH) (Последнее не проверял пока что)
Я осуществил все без батников и теперь нотепад может компилировать скрипт в любом месте создавая рядом скомпилированный файл, а так же отправлять на сервер и т.п. Так что скоро выйдет новая версия, очень мобильная. :)
Добавлено (01.06.2013, 12:15:27) --------------------------------------------- совершенно будет не важно где лежит скрипт или сам нотепад, при нажатии на F9 он будет компилировать рядом со скриптом скомпилированный файл.
ОБНОВИЛ ОБНОВЛЕНИЕ ОТ 04 Декабря 2013 Обновление от 04.12.13: - Возможность компилировать скрипт с любой директории. - Возможность компилировать скрипт на хостинг, без батников. - Обновлены плагины и нотепад до 6.5.1 версии. - и .т.п...
Можно ли как нибудь вручную интегрировать в контекстное меню проводника Windows7???
ЦитатаSunday ()
9. Для тех у кого PawnPad++ не появляется в контекстовом меню или не регистрирует система формат .sp, добавил в корневую папку Reg_Formats.reg, нажмите на нем правую кнопку мышки, выберете пункт "Изменить", найдите строку @="\"D:\\PawnPad++\\notepad++.exe\" \"%1\"" и впишите свой путь, сохраните изменения и запустите Reg_Formats.reg, после чего он попросит внести изменения в систему, нажмите "ДА", теперь Ваш PawnPad++ будет отображен в контекстовом меню.
ЦитатаMongoL666 ()
А как поменять цвет заднего фона в проге ???
Опции -> Определение стилей...
п.с. Хотелось бы увидеть уникальные стили от пользователей, которые в дальнейшем будут добавлены в PawnPad++.