o-jill / kouets Goto Github PK
View Code? Open in Web Editor NEWautomatic lint program with gui.
automatic lint program with gui.
sometimes "# of errors" in list view does not match the result and the number is displayed in next row in some cases.
input:
"C:/programing/qt/kouets/src/mainwindow.cpp(167): Lines should be <= 80 characters long [whitespace/line_length] [2]"
result:
<B>C:/programing/qt/kouets/src/mainwindow.cpp</B>(<FONT COLOR='RED'>167</FONT>):<STRONG> Lines should be <= 80 characters long </STRONG> <FONT COLOR='BLUE'>[whitespace/line_length]</FONT> <FONT COLOR='GREEN'>[2]</FONT><BR>"
should be:
<B>C:/programing/qt/kouets/src/mainwindow.cpp</B>(<FONT COLOR='RED'>167</FONT>):<STRONG> Lines should be <= 80 characters long </STRONG> <FONT COLOR='BLUE'>[whitespace/line_length]</FONT> <FONT COLOR='GREEN'>[2]</FONT><BR>"
let's try cppcheck as checking program.
now kouets gets all the outputs from some program and put it to QTextEdit.
to make it more interactive, i want to make it real time.
and i may have to change decorating method or make some buffering class.
the previous .kouets's path are used as base path.
how about change project file format to XML?
it is useful for adding some parameters.
how to use SAX parser in Qt:
now program settings are stored as user's settings.
that kind of setting will be stored in each project file.
and of cause current settings will be kept as default setting.
when the files do not exist, status becomes "done", # of errors is zero and lastupdate becomes "1601/01/01 09:00:00".
they should be some error message.
put results into treeview.
how about activating a tab by double-clicking a file in the tree view.
when you want to compile a file, almost always you have to prepare some environmental variables such as INCLUDE.
some times *.bat files are easy to use.
this site shows how to change the variables when you run a child process.
Changing Environment Variables
to get which project file was loaded, i want to put project file name somewhere in the window.
i want a checkbox in settings tab about openning( or activating) latest file's tab.
i tried to use Coverity for static analysis.
but it turned out that i could not use travis-ci.org instead of travis-ci.com.
it is trouble some to setup coverity environment.
so i gave up using coverity ...
fix mainwindow's title!
kouets? Kouets? or empty?
to support some variables like $filename in command-line.
term | meaning |
---|---|
${dir} | /path/to/the/ |
${path} | /path/to/the/file.ext |
${file} | file.ext |
${filename} | file |
${suffix} | ext |
with this feature, you can set "-i ${path} -o ${dir}output.log" in command-line.
support other program's outputs such as
to manage many files, i want to use a file like project file.
i also have to decide its suffix!
without any registered files, when i push pause button, the progress bar in status bar becomes marquee mode...
if a path (application path, file path and so on) includes space such as c:\program files\kouets\kouets.exe qprocess parse it as separator in a command line.
the path should be double-quoted.
save outputs as one or multiple files.
"double quotation" makes shell confused.
under linux, you shoud remove "double quotaiton" if the path does not contain SPACE.
is it because of Qt?
to choose parser, some ui(user interface) is necessary.
i want to add some unit test.
but i haven't decided yet how to implement it.
how about add a column for absolute path and make it hidden.
first column will be relative path as stored in project files.
it will be helpful in making project file hierarchy.
at first, i want to close a tab with Ctrl-W.
in adding some files by dropping, process does not start automatically.
it bight be "brunning_"'s state problem.
"initialized" should be added.
enum {
run_init = -1,
run_stop = 0,
run_running = 1,
run_max
};
decoration for cppcheck is necessary to get information from its output.
how about add a column about last updated date-time?
ini file was stored at "/kouets/src//.Kouets/Kouets.ini".
put processing status somewhere.
support opening project file from command line.
support drag and drop files.
project file
non project file
programs puts their information to STDOUT and sometimes STDERR.
ex. cpplint.py puts to STDERR.
so, i want to choose among them.
STDOUT, STDERR or both of them?
when opening another project file,
contents of previous project file are remained in tree view.
now file path are stored as absolute path.
fix it!!
gcc:
4.6.1(32bit)
Qt:
5.5.1(32bit)
reason:
TRUE and FALSE are not defined.
why is it ok on travis?
i want to color the outputs.
QTextEdit supports HTML.
so i have to parse the output and insert some HTML tags.
ๅฆ็ใ็ตใใฃใ(ใพใใฏๅงใพใฃใ)ๆใซใฟใใใขใฏใใฃใใซใใใ
ๅงใพใฃใๆใฎใปใใ็ฐกๅใใใ
line number will be shown in different way from vs7 format.
without --output=vs7
D:/programing/QT/kouets/src/kouetsapp.h:0: No copyright message found. You should have a line: "Copyright [year] <Copyright Owner>" [legal/copyright] [5]
D:/programing/QT/kouets/src/kouetsapp.h:6: #ifndef header guard has wrong style, please use: SRC_KOUETSAPP_H_ [build/header_guard] [5]
D:/programing/QT/kouets/src/kouetsapp.h:92: #endif line should be "#endif // SRC_KOUETSAPP_H_" [build/header_guard] [5]
D:/programing/QT/kouets/src/kouetsapp.h:15: { should almost always be at the end of the previous line [whitespace/braces] [4]
D:/programing/QT/kouets/src/kouetsapp.h:16: public: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
D:/programing/QT/kouets/src/kouetsapp.h:17: Is this a non-const reference? If so, make const or use a pointer: int &argc [runtime/references] [2]
D:/programing/QT/kouets/src/kouetsapp.h:69: private: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
D:/programing/QT/kouets/src/kouetsapp.h:73: protected: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
D:/programing/QT/kouets/src/kouetsapp.h:76: private: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
Done processing D:/programing/QT/kouets/src/kouetsapp.h
Total errors found: 9
with --output=vs7
D:/programing/QT/kouets/src/kouetsapp.h(0): No copyright message found. You should have a line: "Copyright [year] <Copyright Owner>" [legal/copyright] [5]
D:/programing/QT/kouets/src/kouetsapp.h(6): #ifndef header guard has wrong style, please use: SRC_KOUETSAPP_H_ [build/header_guard] [5]
D:/programing/QT/kouets/src/kouetsapp.h(92): #endif line should be "#endif // SRC_KOUETSAPP_H_" [build/header_guard] [5]
D:/programing/QT/kouets/src/kouetsapp.h(15): { should almost always be at the end of the previous line [whitespace/braces] [4]
D:/programing/QT/kouets/src/kouetsapp.h(16): public: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
D:/programing/QT/kouets/src/kouetsapp.h(17): Is this a non-const reference? If so, make const or use a pointer: int &argc [runtime/references] [2]
D:/programing/QT/kouets/src/kouetsapp.h(69): private: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
D:/programing/QT/kouets/src/kouetsapp.h(73): protected: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
D:/programing/QT/kouets/src/kouetsapp.h(76): private: should be indented +1 space inside class KouetsApp [whitespace/indent] [3]
Done processing D:/programing/QT/kouets/src/kouetsapp.h
Total errors found: 9
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.