Comment configurer le plugin NppExec pour Notepad ++?
Je voudrais que NppExec compile mes fichiers C, les exécute et affiche leur sortie, tous dans Notepad ++.
Voici une procédure pour Perl, adaptez-la simplement pour C. J'espère que cela vous aidera.
npp_save
<- enregistre le document actuelCD $(CURRENT_DIRECTORY)
<- Va au répertoire courantPerl.exe -c -w "$(FILE_NAME)"
<- exécute la commande Perl.exe -c -w, exemple: Perl.exe -c -w test.pl (-c = compile -w = warnings) Для Perl,
Для запуска сценария Perl используйте ту процедуру
Требование: Вам необходимо установить переменную classpath.
Перейти к плагинам -> NppExec -> Execute
В разделе команд введите этот
cmd /c cd "$(CURRENT_DIRECTORY)"&&"$(FULL_CURRENT_PATH)"
Сохраните его и дайте ему имя (я даю Perl).
НажмитеOKСли редактор хочет перезапустить, сделайте то сначала.
Теперь нажмитеF6и вы найдете вывод Perl-скрипта на нижней стороне.
Примечание. Не требуется отдельная конфигурация для отдельных файлов.
pour Java ,
Réponse: Вам необходимо установить переменную Java_HOME
et classpath
.
Перейти к плагинам-> NppExec--> Выполнить
В разделе команд введите этот
cmd /c cd "$(CURRENT_DIRECTORY)"&&"%Java_HOME%\bin\javac""$(FULL_CURRENT_PATH)"
ваш *.class
будет сгенерирован на месте текущей папки; несмотря на ошибку программирования.
Для Python,
Télécharger le catalogue plugin Python
Перейдите в плагины-> NppExec->> Запустить файл в Python, интерактив
Cliquez ici pour en savoir plus sur Notepad ++.
Version PHP,
Нет необходимости в другой конфигурации, просто скачайте тот плагин.
plugin PHP и готово.
Для языка C,
Требование: Вам необходимо установить переменную classpath.
Использую компилятор MinGW.
Перейти к плагинам-> NppExec--> Выполнить
вставить это туда
NPP_SAVE
CD $(CURRENT_DIRECTORY)
C:\MinGW32\bin\gcc.exe -g "$(FILE_NAME)"
a
(Не забудьте указать над четырьмя строками отдельные строки.)
Теперь дайте имя, сохраните и ок.
Перезагрузите Npp.
Зайдите в плагины-> NppExec->> Расширенные настройки.
Пункт меню-> Название элемента (у меня есть компилятор C)
Script associé-> в поле со списком выберите вышеуказанное имя скрипта.
Нажмите на Добавить/изменить и ОК.
Теперь назначьте сочетание клавиш, как указано в первом ответе.
НажмитеF6и выберите сценарий или просто нажмите ярлык (я назначилCtrl+2).
Version C++,
Менять только g ++ вместо gcc
и *.cpp
вместо *.c
То оно !!
Voici le code permettant de compléter et d'exécuter le code source Java: - Ouvrez Notepadd ++ - Appuyez sur F6 - Collez ce code.
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
La variable Java Classpath doit être définie pour cela ...
Autre site utile: http://www.scribd.com/doc/52238931/Notepad-Tutorial-Compile-and-Run-Java-Program
Vous pouvez consulter la page suivante avec beaucoup d’informations sur NppExec.
Personnellement, j'utilise le script de traitement par lots suivant pouvant être utilisé sur de nombreux types de fichiers (C, makefile, scripts Perl, scripts Shell, batch, ...). Je stocke ce fichier dans le répertoire utilisateur Notepad ++ (% APPDATA%/Notepad ++) sous le nom runNcompile.bat.
J'utilise ensuite la commande NppExec "$(SYS.APPDATA)\Notepad++\runNcompile.bat" "$(FULL_CURRENT_PATH)"
en cochant l'option "Suivre $ (CURRENT_DIRECTORY)" dans le menu NppExec. Et pour finir, j'attribue une clé spéciale (j'ai réaffecté F12) pour lancer le script.
J'espère que ça peut aider
@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
Je recommande ma solution . Ma situation: g ++ (cygwin) sur win10
Ma solution: Écrire un fichier de commandes .bat et exécuter le compilateur dans ce lot . CompileCpp.bat
@echo off
set PATH=%PATH%;C:\cygwin64\bin\
rm %~n1.exe
c++.exe -g %~dpnx1 -o %~dpn1.exe
%~n1.exe
Console:
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 ================
Vous pouvez réellement compiler et exécuter du code C même sans utiliser les plugins nppexec. Si vous utilisez le compilateur C MingW32, utilisez g ++ pour le langage C++ et gcc pour le langage C.
Collez ce code dans la section run de notepad ++
cmd /k cd $(CURRENT_DIRECTORY) && gcc $(FILE_NAME) -o $(NAME_PART).exe && $(NAME_PART).exe && pause
Il va compiler votre code C dans exe et l'exécuter immédiatement. C'est comme une fonctionnalité de construction et d'exécution dans CodeBlock. Tout cela est fait avec quelques connaissances cmd.
Explication:
Pour plus d'informations sur les commandes du bloc-notes ++, allez à
http://docs.notepad-plus-plus.org/index.php/External_Programs
J'ai créé un seul script puissant qui va:
-Compiler et exécuter un code multilingue comme C
, C++
, Java
, Python
et C#
.
- Supprimez l'ancien exécutable avant de compiler le code.
- N'exécutez le code que s'il a été compilé avec succès.
J'ai également réalisé un didacticiel très convivial: Transformez Notepad ++ en multi-langages puissants IDE qui contient des scripts supplémentaires, tels que l'exécution ou la compilation du code uniquement, l'exécution du code dans CMD, etc.
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!
Dans Windows, si vous utilisez une version portable de MinGW, vous devez définir une variable de chemin ou vous avez une erreur libintl-8.dll introuvable . Mon chemin est C:\Program Files (x86)\CodeBlocks\MinGW\bin
Je viens d'écrire ceci pour exécuter la compilation et exécuter le fichier après, ainsi que fileinputname = nom_put_fichier sur windowsmashines, si votre chemin de compilateur est enregistré dans la fenêtre PATH-var:
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)"
devrait fonctionner pour tout compilateur si vous modifiez c ++. exe en ce que vous voulez
Décompiler avec CMD:
Si cela ne fonctionne pas, essayez ceci:
cmd /K g++ "$(FULL_CURRENT_PATH)" -o "$(FULL_CURRENT_PATH).exe
Il devrait enregistrer où vous avez obtenu le fichier (Exemple: si j'ai un fichier du bureau, il sera enregistré au format .exe sur le bureau).
Je ne sais pas si cela fonctionne sur 64 bits afin que vous puissiez l'essayer!