Как настроить плагин NppExec для Notepad ++?Как скомпилировать и запустить файлы C из Notepad ++ с помощью плагина NppExec?
Я бы хотел, чтобы NppExec скомпилировал мои C-файлы, запустил их и покажет их вывод, все в Notepad ++.
Как настроить плагин NppExec для Notepad ++?Как скомпилировать и запустить файлы C из Notepad ++ с помощью плагина NppExec?
Я бы хотел, чтобы NppExec скомпилировал мои C-файлы, запустил их и покажет их вывод, все в Notepad ++.
Вот процедура для perl, просто приспособите его для C. Надеюсь, это поможет.
npp_save
< - Сохраняет текущий документCD $(CURRENT_DIRECTORY)
< - Переход к току Справочникperl.exe -c -w "$(FILE_NAME)"
< - выполняет c ommand perl.exe -c -w, например: perl.exe -c -w test.pl (-с = компилировать -w = предупреждений)Вот код для compling и запуска исходного кода Java: - Open Notepadd ++ - Хит F6 - Вставить этот код
npp_save <-- Saves the current document
CD $(CURRENT_DIRECTORY) <-- Moves to the current directory
javac "$(FILE_NAME)" <-- compiles your file named *.java
java "$(NAME_PART)" <-- executes the program
Переменная Java Classpath должен быть установлен для этого ...
Другой полезный сайт: http://www.scribd.com/doc/52238931/Notepad-Tutorial-Compile-and-Run-Java-Program
Для Perl
Чтобы запустить PERL использовании сценария этой процедуры
Требования: Вы должны настроить переменную CLASSPATH.
Перейти к плагинов ->NppExec ->Execute
В командном разделе введите этот
cmd /c cd "$(CURRENT_DIRECTORY)"&&"$(FULL_CURRENT_PATH)"
Сохранить его и дать имя ему (я даю Perl)..
Факс: ОК. Если редактор хочет перезапустить, сделайте это первым.
Теперь нажмите F6, и вы найдете свой скрипт для Perl на нижней стороне.
Примечание: не требуется отдельная конфигурация для отдельных файлов.
Для Java,
Требование: Вам нужно настроить JAVA_HOME
и classpath
переменной.
Перейти к plugins-> NppExec-> Выполнить
В командном разделе, введите этот
cmd /c cd "$(CURRENT_DIRECTORY)"&&"%JAVA_HOME%\bin\javac""$(FULL_CURRENT_PATH)"
ваш *.class
произведет на месте текущей папки; несмотря на ошибку программирования.
Для Python,
Используйте этот плагин Python Plugin
Перейти к plugins-> NppExec-> Запустить файл в Python intercative
С помощью этого вы можете запускать скрипты в пределах Notepad ++.
Для PHP,
Нет необходимости в другой конфигурации просто скачайте этот плагин.
PHP Plugin и сделано.
Для языка C,
Требования: Вы должны настроить переменную CLASSPATH.
Я использую компилятор MinGW.
Перейти к plugins-> NppExec-> Выполнить
вставьте в там
NPP_SAVE
CD $(CURRENT_DIRECTORY)
C:\MinGW32\bin\gcc.exe -g "$(FILE_NAME)"
a
(Не забудьте дать выше четырех линий отдельных линий.)
Теперь, дать имя, сохранить и ОК.
Restart Npp.
Перейти к плагинам-> NppExec-> Дополнительные параметры.
Меню item-> Название товара (у меня есть C компилятор)
Associated Script-> из выпадающего списка выберите выше имя сценария.
Нажмите Добавить/изменить и ОК.
Теперь назначьте комбинацию клавиш, как указано в первом ответе.
Нажмите F6 и выберите сценарий или просто нажмите клавишу быстрого доступа (я назначил Ctrl +).
Для C++,
Только смена г ++ вместо gcc
и *.cpp
вместо этого на *.c
Вот и все !!
@ hims056 Спасибо за форматирование! –
Мне нужно это '... javac" "$ (FULL ...', чтобы сделать работу java. (Добавить пробел) – johnchen902
Для инструкций C, когда я получаю плагины, я не вижу перечисленные NppExec, только NppExport и NppFTP. Является ли NppExec дополнительным плагином, который необходимо установить? –
Вы можете просмотреть следующую страницу с большой информацией о NppExec.
Я лично использую следующий пакетный скрипт, который можно использовать для многих типов файлов (C, makefile, Perl-скриптов, скриптов оболочки, пакетной обработки ...). Я храню этот файл в каталоге пользователей Notepad ++ (% APPDATA%/Notepad ++) под именем runNcompile.bat.
Затем я использую команду NppExec "$(SYS.APPDATA)\Notepad++\runNcompile.bat" "$(FULL_CURRENT_PATH)"
при проверке опции «Следуйте за $ (CURRENT_DIRECTORY)» в меню NppExec. И чтобы закончить, я назначил специальный ключ (я переназначил F12), чтобы запустить скрипт.
Надеется, что это может помочь
@echo off
REM ----------------------
REM ----- ARGUMENTS ------
REM ----------------------
set FPATH=%~1
set FILE=%~n1
set DIR=%~dp1
set EXTENSION=%~x1
REM ----------------------
REM ----------------------
REM ------- CONFIG -------
REM ----------------------
REM C Compiler (gcc.exe or cl.exe) + options + object extension
set CL_compilo=gcc.exe
set CFLAGS=-c "%FPATH%"
set OBJ_Ext=o
REM GNU make
set GNU_make=make.exe
REM ----------------------
IF /I "%FILE%"==Makefile GOTO _MAKEFILE
IF /I %EXTENSION%==.bat GOTO _BAT
IF /I %EXTENSION%==.sh GOTO _SH
IF /I %EXTENSION%==.pl GOTO _PL
IF /I %EXTENSION%==.tcl GOTO _TCL
IF /I %EXTENSION%==.c GOTO _C
IF /I %EXTENSION%==.mak GOTO _MAKEFILE
IF /I %EXTENSION%==.mk GOTO _MAKEFILE
IF /I %EXTENSION%==.html GOTO _HTML
echo Format of argument (%FPATH%) not supported!
GOTO END
REM Batch shell files (bat)
:_BAT
call "%FPATH%"
goto END
REM Linux shell scripts (sh)
:_SH
call sh.exe "%FPATH%"
goto END
REM Perl Script files (pl)
:_PL
call perl.exe "%FPATH%"
goto END
REM Tcl Script files (tcl)
:_TCL
call tclsh.exe "%FPATH%"
goto END
REM Compile C Source files (C)
:_C
REM MAKEFILES...
IF EXIST "%DIR%Makefile" (cd "%DIR%")
IF EXIST "%DIR%../Makefile" (cd "%DIR%/..")
IF EXIST "%DIR%../../Makefile" (cd "%DIR%/../..")
IF EXIST "Makefile" (
call %GNU_make% all
goto END
)
REM COMPIL...
echo -%CL_compilo% %CFLAGS%-
call %CL_compilo% %CFLAGS%
IF %ERRORLEVEL% EQU 0 (
echo -%CL_compilo% -o"%DIR%%FILE%.exe" "%DIR%%FILE%.%OBJ_Ext%"-
call %CL_compilo% -o"%DIR%%FILE%.exe" "%DIR%%FILE%.%OBJ_Ext%"
)
IF %ERRORLEVEL% EQU 0 (del "%DIR%%FILE%.%OBJ_Ext%")
goto END
REM Open HTML files in web browser (html and htm)
:_HTML
start /max /wait %FPATH%
goto END
REM ... END ...
:END
echo.
IF /I "%2" == "-pause" pause
декомпилировать с CMD:
Если те, не работают, попробуйте это:
cmd /K g++ "$(FULL_CURRENT_PATH)" -o "$(FULL_CURRENT_PATH).exe
Он должен сохранить, где вы получил файл (пример: Если я получил файл с рабочего стола, он будет сохранен как .exe на рабочем столе)
Я не знаю, работает ли он o n 64 бит, хотя вы можете попробовать!
Я написал только это, чтобы выполнить компиляцию и запустить файл после того, как, плюс fileinputname = fileoutputname на windowsmashines, если ваш compilerpath является зарегестрирована в окнах PATH-вар:
NPP_SAVE
cd "$(CURRENT_DIRECTORY)"
set LEN~ strrfind $(FILE_NAME) .
set EXENAME ~ substr 0 $(LEN) $(FILE_NAME)
set $(EXENAME) = $(EXENAME).exe
c++.exe "$(FILE_NAME)" -o "$(EXENAME)"
"$(EXENAME)"
должен работать для любого компилятора если изменить C++ EXE, что вы хотите
Я сделал один мощный скрипт, который будет:.
-Compile и запустить мульти код языка как C
, C++
, Java
, Python
и C#
.
-Удалить старый исполняемый файл перед компиляцией кода.
-Одно запустить код, если он скомпилирован успешно.
Я также сделал очень нуб дружественный учебник Transform Notepad++ to Powerful Multi Languages IDE, который содержит некоторые дополнительные сценарии, как только бежать или компиляции кода, запуска кода внутри CMD и т.д.
npp_console 1 //open console
NPP_CONSOLE - //disable output of commands
npe_console m- //disable unnecessary output
con_colour bg= 191919 fg= F5F5F5 //set console colors
npp_save //save the file
cd $(CURRENT_DIRECTORY) //follow current directory
NPP_CONSOLE + //enable output
IF $(EXT_PART)==.c GOTO C //if .c file goto C label
IF $(EXT_PART)==.cpp GOTO CPP //if .cpp file goto CPP label
IF $(EXT_PART)==.java GOTO JAVA //if .java file goto JAVA label
IF $(EXT_PART)==.cs GOTO C# //if .cs file goto C# label
IF $(EXT_PART)==.py GOTO PYTHON //if .py file goto PYTHON label
echo FILE SAVED
GOTO EXITSCRIPT // else treat it as a text file and goto EXITSCRIPT
//C label
:C
cmd /C if exist "$(NAME_PART).exe" cmd /c del "$(NAME_PART).exe"//delete existing executable file if exists
gcc "$(FILE_NAME)" -o $(NAME_PART) //compile file
IF $(EXITCODE) != 0 GOTO EXITSCRIPT //if any compilation error then abort
echo C CODE COMPILED SUCCESSFULLY: //print message on console
$(NAME_PART) //run file in cmd, set color to green and pause cmd after output
GOTO EXITSCRIPT //finally exits
:CPP
cmd /C if exist "$(NAME_PART).exe" cmd /c del "$(NAME_PART).exe"
g++ "$(FILE_NAME)" -o $(NAME_PART)
IF $(EXITCODE) != 0 GOTO EXITSCRIPT
echo C++ CODE COMPILED SUCCESSFULLY:
$(NAME_PART)
GOTO EXITSCRIPT
:JAVA
cmd /C if exist "$(NAME_PART).class" cmd /c del "$(NAME_PART).class"
javac $(FILE_NAME) -Xlint
IF $(EXITCODE) != 0 GOTO EXITSCRIPT
echo JAVA CODE COMPILED SUCCESSFULLY:
java $(NAME_PART)
GOTO EXITSCRIPT
:C#
cmd /C if exist "$(NAME_PART).exe" cmd /c del "$(NAME_PART).exe"
csc $(FILE_NAME)
IF $(EXITCODE) != 0 GOTO EXITSCRIPT
echo C# CODE COMPILED SUCCESSFULLY:
$(NAME_PART)
GOTO EXITSCRIPT
:PYTHON
echo RUNNING PYTHON SCRIPT IN CMD: //python is a script so no need to compile
python $(NAME_PART).py
GOTO EXITSCRIPT
:EXITSCRIPT
// that's all, folks!
Вы можете компилировать и код запуска C даже без использования плагинов nppexec. Если вы используете компилятор MingW32 C, используйте g ++ для языка C++ и gcc для языка C.
Вставить этот код в Notepad ++ запустить раздел
cmd /k cd $(CURRENT_DIRECTORY) && gcc $(FILE_NAME) -o $(NAME_PART).exe && $(NAME_PART).exe && pause
Это будет скомпилировать код C в ехе и запустить его немедленно. Это похоже на функцию сборки и запуска в CodeBlock. Все это делается с некоторыми знаниями CMD.
Объяснение:
Для получения дополнительной информации о командах Notepad ++, перейдите
http://docs.notepad-plus-plus.org/index.php/External_Programs
Я рекомендую мое решение. Мое положение: g ++ (cygwin) on win10
Мое решение: Запишите командный файл .bat и выполните компилятор в этой партии. compileCpp.bat
@echo off
set PATH=%PATH%;C:\cygwin64\bin\
rm %~n1.exe
c++.exe -g %~dpnx1 -o %~dpn1.exe
%~n1.exe
консоли:
NPP_EXEC: "runCpp"
NPP_SAVE: E:\hw.cpp
CD: E:\
Current directory: E:\
cmd /c C:\cygwin64\bin\compileCpp.bat "hw.cpp"
Process started >>>
Hello World<<< Process finished. (Exit code 0)
================ READY ================
В окнах, если вы используете портативную версию MinGW вы должны установить переменную пути или у Вас есть ошибка libintl-8.dll не найдено. Мой путь: C: \ Program Files (x86) \ CodeBlocks \ MinGW \ bin
В то же время я нашел руководство для NppExec. Он хранится в \ Notepad ++ \ plugins \ docs \ NppExec и описывает, как создавать скрипты компиляции для всех типов файлов исходного кода. Это мне очень помогло. Ваш ответ верен и, вероятно, отлично работает для скриптов perl (я не пробовал). Думаю, он будет работать и для c-файлов, если вы его измените. Спасибо! –
Используя этот метод, ярлык не работает для меня, если я не открываю консоль, не накладываю туда курсор и не нажимаю ярлык. Если я это сделаю, команды будут запущены. – AlanSE