mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Support for .pro INI files (KiCad project files)
Update the heuristic for .pro to include both INI and QMake files Fixes #2116
This commit is contained in:
@@ -107,10 +107,14 @@ module Linguist
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
disambiguate "IDL", "Prolog" do |data|
|
disambiguate "IDL", "Prolog", "INI", "QMake" do |data|
|
||||||
if data.include?(":-")
|
if data.include?(":-")
|
||||||
Language["Prolog"]
|
Language["Prolog"]
|
||||||
else
|
elsif data.include?("last_client=")
|
||||||
|
Language["INI"]
|
||||||
|
elsif data.include?("HEADERS") && data.include?("SOURCES")
|
||||||
|
Language["QMake"]
|
||||||
|
elsif /^\s*function[ \w,]+$/.match(data)
|
||||||
Language["IDL"]
|
Language["IDL"]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1311,6 +1311,7 @@ INI:
|
|||||||
- .ini
|
- .ini
|
||||||
- .cfg
|
- .cfg
|
||||||
- .prefs
|
- .prefs
|
||||||
|
- .pro
|
||||||
- .properties
|
- .properties
|
||||||
tm_scope: source.ini
|
tm_scope: source.ini
|
||||||
aliases:
|
aliases:
|
||||||
|
|||||||
71
samples/INI/MouseKeyboard.pro
Normal file
71
samples/INI/MouseKeyboard.pro
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
update=Sun 15 Feb 2015 01:10:10 PM EST
|
||||||
|
last_client=eeschema
|
||||||
|
[pcbnew]
|
||||||
|
version=1
|
||||||
|
PageLayoutDescrFile=
|
||||||
|
LastNetListRead=
|
||||||
|
UseCmpFile=1
|
||||||
|
PadDrill=0.6
|
||||||
|
PadDrillOvalY=0.6
|
||||||
|
PadSizeH=1.5
|
||||||
|
PadSizeV=1.5
|
||||||
|
PcbTextSizeV=1.5
|
||||||
|
PcbTextSizeH=1.5
|
||||||
|
PcbTextThickness=0.3
|
||||||
|
ModuleTextSizeV=1
|
||||||
|
ModuleTextSizeH=1
|
||||||
|
ModuleTextSizeThickness=0.15
|
||||||
|
SolderMaskClearance=0
|
||||||
|
SolderMaskMinWidth=0
|
||||||
|
DrawSegmentWidth=0.2
|
||||||
|
BoardOutlineThickness=0.09999999999999999
|
||||||
|
ModuleOutlineThickness=0.15
|
||||||
|
[pcbnew/libraries]
|
||||||
|
LibDir=
|
||||||
|
[general]
|
||||||
|
version=1
|
||||||
|
[eeschema]
|
||||||
|
version=1
|
||||||
|
PageLayoutDescrFile=
|
||||||
|
SubpartIdSeparator=0
|
||||||
|
SubpartFirstId=65
|
||||||
|
LibDir=/home/hschmale/KiCad/LibMods-3rdParty
|
||||||
|
NetFmtName=
|
||||||
|
RptD_X=0
|
||||||
|
RptD_Y=100
|
||||||
|
RptLab=1
|
||||||
|
LabSize=60
|
||||||
|
[eeschema/libraries]
|
||||||
|
LibName1=power
|
||||||
|
LibName2=device
|
||||||
|
LibName3=transistors
|
||||||
|
LibName4=conn
|
||||||
|
LibName5=linear
|
||||||
|
LibName6=regul
|
||||||
|
LibName7=74xx
|
||||||
|
LibName8=cmos4000
|
||||||
|
LibName9=adc-dac
|
||||||
|
LibName10=memory
|
||||||
|
LibName11=xilinx
|
||||||
|
LibName12=special
|
||||||
|
LibName13=microcontrollers
|
||||||
|
LibName14=dsp
|
||||||
|
LibName15=microchip
|
||||||
|
LibName16=analog_switches
|
||||||
|
LibName17=motorola
|
||||||
|
LibName18=texas
|
||||||
|
LibName19=intel
|
||||||
|
LibName20=audio
|
||||||
|
LibName21=interface
|
||||||
|
LibName22=digital-audio
|
||||||
|
LibName23=philips
|
||||||
|
LibName24=display
|
||||||
|
LibName25=cypress
|
||||||
|
LibName26=siliconi
|
||||||
|
LibName27=opto
|
||||||
|
LibName28=atmel
|
||||||
|
LibName29=contrib
|
||||||
|
LibName30=valves
|
||||||
|
LibName31=arduino_shieldsNCL
|
||||||
|
LibName32=con-usb-2
|
||||||
|
LibName33=2axispotwselect
|
||||||
@@ -60,11 +60,13 @@ class TestHeuristcs < Minitest::Test
|
|||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
# Candidate languages = ["IDL", "Prolog"]
|
# Candidate languages = ["IDL", "Prolog", "QMake", "INI"]
|
||||||
def test_pro_prolog_idl_by_heuristics
|
def test_pro_by_heuristics
|
||||||
assert_heuristics({
|
assert_heuristics({
|
||||||
"Prolog" => "Prolog/logic-problem.pro",
|
"Prolog" => all_fixtures("Prolog", "*.pro"),
|
||||||
"IDL" => "IDL/mg_acosh.pro"
|
"IDL" => all_fixtures("IDL", "*.pro"),
|
||||||
|
"INI" => all_fixtures("INI", "*.pro"),
|
||||||
|
"QMake" => all_fixtures("QMake", "*.pro")
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user