diff --git a/other/qmk/pinky3_main/README.md b/other/qmk/pinky3_main/README.md new file mode 100644 index 0000000..a59b044 --- /dev/null +++ b/other/qmk/pinky3_main/README.md @@ -0,0 +1,9 @@ + +#Compiling / Flashing + +```bash +qmk compile ~/.dotfiles/qmk/pinky3_main/pinky_3_layout_main.json + +sudo qmk flash ~/.dotfiles/qmk/pinky3_main/pinky_3_layout_main.json -kb pinky/3 -km ~/.dotfiles/qmk/pinky3_main/pinky_3_layout_main.hex -bl avrdude-split-left +``` + diff --git a/other/qmk/pinky3_main/images/Layer_0.png b/other/qmk/pinky3_main/images/Layer_0.png new file mode 100644 index 0000000..825e0eb Binary files /dev/null and b/other/qmk/pinky3_main/images/Layer_0.png differ diff --git a/other/qmk/pinky3_main/images/Layer_1.png b/other/qmk/pinky3_main/images/Layer_1.png new file mode 100644 index 0000000..ac2e8f0 Binary files /dev/null and b/other/qmk/pinky3_main/images/Layer_1.png differ diff --git a/other/qmk/pinky3_main/images/Layer_2.png b/other/qmk/pinky3_main/images/Layer_2.png new file mode 100644 index 0000000..8f06efe Binary files /dev/null and b/other/qmk/pinky3_main/images/Layer_2.png differ diff --git a/other/qmk/pinky3_main/images/Layer_3.png b/other/qmk/pinky3_main/images/Layer_3.png new file mode 100644 index 0000000..e0db26a Binary files /dev/null and b/other/qmk/pinky3_main/images/Layer_3.png differ diff --git a/other/qmk/pinky3_main/images/Layer_4.png b/other/qmk/pinky3_main/images/Layer_4.png new file mode 100644 index 0000000..3b1a23a Binary files /dev/null and b/other/qmk/pinky3_main/images/Layer_4.png differ diff --git a/other/qmk/pinky3_main/pinky_3_layout_main.hex b/other/qmk/pinky3_main/pinky_3_layout_main.hex new file mode 100644 index 0000000..1b6a18b --- /dev/null +++ b/other/qmk/pinky3_main/pinky_3_layout_main.hex @@ -0,0 +1,965 @@ +:100000000C94F7010C943E020C943E020C941809D7 +:100010000C943E020C943E020C943E020C943E0260 +:100020000C943E020C943E020C94CE1A0C94A11B2C +:100030000C944A160C943E020C943E020C943E0220 +:100040000C943E020C943E020C943E020C943E0230 +:100050000C943E020C94AB160C943E020C943E029F +:100060000C943E020C943E020C943E020C943E0210 +:100070000C943E020C943E020C943E020C943E0200 +:100080000C943E020C943E020C943E020C943E02F0 +:100090000C943E020C943E020C943E020C943E02E0 +:1000A0000C943E020C943E020C943E02296D140006 +:1000B0001A000800150017002F002B61040016001D +:1000C000070009000A002602D75C1D001B0006007D +:1000D000190005000351000000000000E200E300E9 +:1000E000025849002A00130012000C0018001C00DE +:1000F0003000280033000F000E000D000B00270217 +:10010000340038003700360010001100015800009C +:1001100000000000055146002C0004512B0036025F +:10012000520037020000000000002900500051007A +:100130004F00000000000000000000000000B200BE +:1001400000000000000000000000000000000000AF +:10015000000000002A002E0226002500240038009E +:10016000000022022D00230022002100250223028C +:1001700028002E0020001F001E00270001000000A4 +:10018000000000000000000000000000000000006F +:10019000000000000000000000000000000000005F +:1001A00000004E004A0000000000000000000000B7 +:1001B00000004B00000000000000000000000000F4 +:1001C000010000002A004C000000000000000000B8 +:1001D0000000000000004F005200510050000000DD +:1001E000000000000000000000000000000000000F +:1001F00000000000000000000000000035001E02AA +:100200001F02200221022202000000003A003B00EF +:100210003C003D003E000000000000000000000027 +:1002200000000000000000000000000000000000CE +:10023000000000002D024500440025022402230294 +:100240000000000043004200410040003F00000069 +:10025000000031000000000000000000000000006D +:10026000000000000000000000000100000000008D +:10027000000000000000000000000000000000007E +:10028000BE000000000000000000000000000000B0 +:10029000000000000000000000000000000000005E +:1002A000000000000000AE0000000000BD000000E3 +:1002B000000000000000AB00A900AA00AC00000094 +:1002C0000000000000000000A80000000000000086 +:1002D000000000000000000000000100000000001D +:1002E000000000000000000000000000000000000E +:1002F00000000000000000000000000000000000FE +:1003000000000000000000000000000000000000ED +:1003100000000000000000000000000000000000DD +:1003200000000000000000000000000000000000CD +:1003300000000000000000000000000000000000BD +:100340000000000001000000000000000403300075 +:1003500000000C03500069006E006B007900000083 +:100360001403740061006D0061006E006900730089 +:100370006800690000000403090409022200010169 +:1003800000A0FA0904000001030101000921110184 +:1003900000012240000705810308000A1201100134 +:1003A00000000008EDFE60300100010203010501BC +:1003B0000906A101050719E029E71500250195089F +:1003C000750181029501750881010507190029FF52 +:1003D000150026FF009506750881000508190129FA +:1003E00005950575019102950175039101C01124D0 +:1003F0001FBECFEFDAE0DEBFCDBF04B603FE27C0DD +:100400008091440290914502A0914602B09147022A +:100410008730904BA740B04BD1F410924402109219 +:100420004502109246021092470214BE84B7877F9D +:1004300084BF0FB6F894A89580916000886180937E +:100440006000109260000FBEE0E0F8E3099511E053 +:10045000A0E0B1E0E6EAFBE302C005900D92A2380D +:10046000B107D9F722E0A2E8B1E001C01D92A4349F +:10047000B207E1F70E9416180C949B1D0C94000023 +:100480000C9402050C9403050C944A020C949E02F1 +:1004900081E0089581E0089508950C944C021F9323 +:1004A000CF93DF9300D000D00F92CDB7DEB7498352 +:1004B0005A836B832091A10189819A8121111BC0EC +:1004C0006623A9F00E94AB13182F682F89819A81A7 +:1004D0000E94541369817A81812F0F900F900F90A1 +:1004E0000F900F90DF91CF911F910C9400030E9409 +:1004F0008213182FEFCF0E94AB1369817A81EDCF61 +:10050000FC01408151816281738184810C944F028E +:10051000CF93DF93D82FC92F0E9480026D2F7C2F9D +:10052000DF91CF910C944D020E94FA14811102C008 +:100530000E9497150C9440020C944202089581E0A9 +:1005400008950C949F02CF93C82F0E9446028C2FCF +:10055000CF910C94A10208950E94D10D0E94AB028C +:100560002FEF84E39CE0215080409040E1F700C0F1 +:10057000000087E797E790930108809300080C94A8 +:10058000CF160F931F93CF93DF93EC010E9480024D +:100590008C01BE010E944402882329F1BE01C801DA +:1005A0000E9427078823F9F0BE01C8010E946B074B +:1005B0008823C9F0BE01C8010E943E08882399F033 +:1005C0008A81882339F001158CE5180751F00E3D1A +:1005D0001C4579F0CE01DF91CF911F910F910C94C2 +:1005E00048020E94AC0280E0DF91CF911F910F91F1 +:1005F00008950E949715F7CF90E080E00895089540 +:10060000972F70E027E0929F600D711D1124FB0170 +:1006100098E3899FE00DF11D1124EE0FFF1FE455B3 +:10062000FF4F859194910895FC01EE0FFF1FE45B4D +:10063000FC4F859194910895CF93DF930E9400031E +:100640000E942704EC01811521E5920708F048C0BB +:10065000811530E5930708F0AFC0803E910518F58D +:10066000803C910508F096C0883A910570F4853A6F +:10067000910508F08CC08130910531F10497813AE1 +:10068000910510F1D0E0C0E01FC08F3B9105D1F380 +:10069000C85AD0E0CC0FDD1FCA5EDE4F0990D8816A +:1006A000C02DD46411C0811540E3940788F4C115AE +:1006B00080E2D80708F074C0C83ED10528F0CE010A +:1006C0009A9581159F41F0F6CE01DF91CF91089563 +:1006D000811530E4930708F466C0DF70D06AF4CF68 +:1006E0008115964560F5C11585E5D80708F096C0D7 +:1006F000C11594E5D907F0F4C11523E5D20708F038 +:1007000079C0C11532E5D30708F46FC0CE018370FC +:10071000992721E030E002C0220F331F8A95E2F7CB +:10072000C695C69540E2C49FE0011124C22BD32B8D +:10073000DC68CACFDC2FCC27C46FD06AC5CFC11507 +:100740008AE5D80788F4C11599E5D90708F071C082 +:10075000CE0198558F3F910511F008F093CFDC2F13 +:10076000CC27C06FD06AB0CFCE0190568115904291 +:1007700008F088CF8D2F8F710E94BF0490E0982FD2 +:10078000882788279F719C012C2BE90150C0A497D2 +:10079000D0649ACF805C91090E941403EC0194CF3D +:1007A000CE019F70F9CF9927D3FF03C0EC01D86C1D +:1007B0008BCFEC01D06C88CF74E0969587957A95B5 +:1007C000E1F783702C2F26952695237040E2249F15 +:1007D00090011124382B8C2F8370C1E0D0E002C02F +:1007E000CC0FDD1F8A95E2F7A1CFDC2FCC27C16F9C +:1007F000D06A6ACFCE018370992721E030E002C031 +:10080000220F331F8A95E2F7C695C69580E2C89FEE +:10081000E0011124C22BD32BDA6856CF8C2F0E9413 +:10082000BF04C82FD0E0DC2FCC27CC27DF71D062EB +:100830004BCF8C2F8F700E94BF0434E0D695C795A4 +:100840003A95E1F7CF70DC2FC82FD0693DCF803EBD +:10085000910599F1C8F48133910509F476C048F403 +:100860008932910509F46AC08A32910509F474C08D +:10087000089589339105D1F082389105B9F0853317 +:10088000910509F454C00895843E910599F138F416 +:10089000823E9105F9F0833E910509F10895863E67 +:1008A000910599F1873E9105B9F10895209135029E +:1008B0002370A1F080EE90E008952091350220FD94 +:1008C00052C03091360230FF09C024FF4FC090E083 +:1008D00080E004C02091350222FDF7CF08952091D9 +:1008E000350222FD46C03091360230FDE3CF24FFB1 +:1008F000F5CFEDCF2091360221FFF0CF8091350268 +:1009000084FDE5CF87EE90E008952091350223FF26 +:10091000E5CF24FDDCCFF6CF2091350223FD2CC09E +:100920003091360231FFE3CF84EE90E008952091BC +:10093000350225FFD3CF89E290E00895209135025A +:1009400025FFCCCF85E390E008952091350226FF66 +:10095000C5CF8AE290E008952091350226FFBECFF0 +:1009600081E390E0089589E390E0089583EE90E0BC +:10097000089582EE90E0089586EE90E008959091BB +:10098000350292FF06C0282F28712830F9F4877F9E +:10099000846093FF06C0282F28712831F1F4877EE8 +:1009A00084612091360220FF06C0382F387138301C +:1009B000D9F4877F816021FF06C0282F2871283154 +:1009C000D1F4877E816194FD877E0895282F24715C +:1009D0002430F9F68B7F8860DCCF282F24712431F6 +:1009E00001F78B7E8861DDCF382F3171313019F7F7 +:1009F0008E7F8860E0CF282F2171213121F78E7EF4 +:100A00008861E1CF08950895E82FF0E0E95DFD4F9A +:100A100080810895089580EA8A95F1F708950895F0 +:100A20000E947506809100018091000194E081117F +:100A300090E09093300284E0891B80932F02ABE416 +:100A4000B1E061E070E08D91E82FE295EF70F0E0A9 +:100A500041A18F709B0101C0220F8A95EAF7922F66 +:100A60009095942391A382A1822B82A381E0AF343D +:100A7000B80749F7A4E4B1E061E070E08D91E82F98 +:100A8000E295EF70F0E041A18F709B0101C0220F51 +:100A90008A95EAF7922F9095942391A382A1822BB5 +:100AA00082A381E0AB34B80749F7EFE1F2E0A7E2B7 +:100AB000B2E087E292E011921D928E179F07D9F75C +:100AC00084E00E9421060E9494020C947F060E94FA +:100AD00058068823F1F080912F0290E0895D9D4FA8 +:100AE0000E949206811112C0809182018F5F8093D3 +:100AF0008201863048F0E0912F02F0E0E95DFD4F81 +:100B000010821182128213820C949C021092820134 +:100B1000FBCF8091300290E0895D9D4F0E94AD0631 +:100B20000C940F055F926F927F928F929F92AF927B +:100B3000BF92CF92DF92EF92FF920F931F93CF93CA +:100B4000DF938FE1E82E82E0F82E9BE4892E91E07E +:100B5000992E712CAA24A394B12CD7015D907D010C +:100B6000FD0112928F01D4018D914D01C82FC295C4 +:100B7000CF70D0E099A18F70650101C0CC0C8A952F +:100B8000EAF7892F8C2989A38AA16C2C609486218D +:100B90008AA30E940B05E4E4F1E030E020E04191FB +:100BA000A42FA295AF70B0E090968C91D8015C9183 +:100BB00090E04F7002C0959587954A95E2F780FDC9 +:100BC0003EC08A2D022E01C0880F0A94EAF7852BB9 +:100BD000D8018C932F5F3F4F2730310501F789A152 +:100BE000682269A28AA1C82ACAA281E09C919511B3 +:100BF00001C080E0782AB3E2EB16B2E0FB0609F010 +:100C0000ACCF6091300270E0695D7D4F272D44E0EC +:100C10008FE192E00E9422060E946705872DDF91F6 +:100C2000CF911F910F91FF90EF90DF90CF90BF90E9 +:100C3000AF909F908F907F906F905F90089580E02D +:100C4000C6CF0895FF920F931F93CF93DF93F82E93 +:100C5000092F162FD72FC42F222349F081E080932C +:100C600085010E947A16909384018093830180917C +:100C700085018823A1F080918301909184010E94D5 +:100C80008616069760F0EF2DF02FA12FBD2FCE0F07 +:100C9000DF2FD11DEC17FD0741F410928501DF9184 +:100CA000CF911F910F91FF90089581918D93F2CF75 +:100CB00080918601811110C08091D800806180935D +:100CC000D8008AE18A95F1F700C09091D90091701F +:100CD00082E0891B8093860181E0909186019130AA +:100CE00009F080E008950C9458060E9473068093E2 +:100CF00000010E94580681110C94860608950E94F6 +:100D00005806811102C00C948C06089561E070E0D1 +:100D100081E091E00C94C90861E070E081E091E02D +:100D20000C94D008CF93DF93D82FC92F0E946A0963 +:100D30009C0180E02115310569F4ED2FFC2FD901CC +:100D4000A857BE4F8C9181932F5F3F4F24303105C0 +:100D5000B1F781E0DF91CF910895FC0190E080E050 +:100D60002191DC01A857BE4F2C9301968430910548 +:100D7000B9F708950F931F93CF93DF93C62FD42F06 +:100D8000022FFC0182818823C9F060938E010E94AA +:100D90007A1690938D0180938C0180E28C0F8830BD +:100DA00008F050C0C77081E001C0880FCA95EAF70B +:100DB000DF91CF911F910F910C945A0B10918E01DE +:100DC000161335C080918C0190918D010E9486167A +:100DD000883C910560F5C0E2CD0F1D17B9F080E2A7 +:100DE000810F883040F4177081E001C0880F1A9598 +:100DF000EAF70E94610BC83048F481E09D2F97709C +:100E000001C0880F9A95EAF70E945A0B802F0E9422 +:100E1000470BC830B8F4D77081E001C0880FDA956D +:100E2000EAF7DF91CF911F910F910C94610B80E253 +:100E30008C0F883038F4C77081E001C0880FCA95E4 +:100E4000EAF7EFCFDF91CF911F910F9108959C01A9 +:100E5000CB01233F4CE5340769F190F4283DFCE5D4 +:100E60003F0721F1293D4CE5340781F1273D3C4501 +:100E7000B1F0FC018281882361F110928E01089506 +:100E8000253FFCE53F07D1F0263F4CE53407D1F084 +:100E9000243F3C4571F727E245EE64EE03C026E2AD +:100EA00041EE61EE0E94BA0680E0089527E245EE29 +:100EB00065EEF8CF26E241EE60EEF4CF26E241EE99 +:100EC00062EEF0CF27E245EE66EEECCF28E241E09D +:100ED000EFCF81E00895CF93DF93EC01FB01828196 +:100EE000882309F4C9C0C631FCE5DF07E0F4C2304D +:100EF0009CE5D907F0F00E940D159093360280937F +:100F00003502C631ECE5DE0720F5C230FCE5DF072F +:100F100098F480913502909136020E941B150E9430 +:100F2000D10D80E006C09E012A5F3C452930310585 +:100F300010F3DF91CF910895FE01E350FC458091BD +:100F400035028160E331F10588F4E356F24E0C94EA +:100F5000531DCA5FDC45C930D105D8F6C055D24E05 +:100F6000FE010C94531D80913502826080933502FE +:100F7000D0CF809135028460F9CF809135028860AE +:100F8000F5CF80913602816080933602C2CF809186 +:100F900036028260F9CF809135028061E7CF80917F +:100FA00035028062E3CF809135028064DFCF0E94FA +:100FB000D10D809135028068D9CF809135028C6047 +:100FC000D5CF809136028360DFCF809135028E7F4E +:100FD000CDCF809135028D7FC9CF809135028B7F37 +:100FE000C5CF80913502877FC1CF809136028E7F39 +:100FF000CBCF809136028D7FC7CF809135028F7E17 +:10100000B5CF809135028F7DB1CF809135028F7B36 +:10101000ADCF0E94D10D809135028F77A7CF8091FF +:101020003502837FA3CF809136028C7FADCF809134 +:10103000350282FB992790F921E0922790FB82F9F3 +:1010400090FB83F993CF80913602982F9095917001 +:101050008E7F892B90FB81F997CF0E94D10D9091C3 +:101060003502892F97FB87F9805880CF81E00E9455 +:1010700099154FCF80E0FBCF81E05BCFCF93DF931B +:10108000EB0186319C4511F50E9448149A81992301 +:1010900099F08A7A91E009F490E090938F018111A0 +:1010A00009C089E20E9423140E94971480E0DF9116 +:1010B000CF91089585E3F6CF80918F01811104C00F +:1010C00089E20E942A14F0CF85E3FBCF81E0EFCFC5 +:1010D0008EE14A9B02C08150E1F74A9BFECF089502 +:1010E0005A9880E28A95F1F75A9A0895FC013BE0FC +:1010F0003A95F1F798E020E080E031E040E14A9550 +:10110000F1F7880F4A9B02C08160232742E04A958D +:10111000F1F7000040E14A95F1F7915079F790E13D +:101120009A95F1F799B132E03A95F1F7000040E174 +:101130004A95F1F792FB992790F992272081920F17 +:1011400090830895EF92FF920F931F93CF93DF93B5 +:101150000F92CDB7DEB719828C017C01E60EF11C2F +:101160000E151F0561F481E09981911180E00F90C7 +:10117000DF91CF911F910F91FF90EF9008950E9402 +:101180006808CE0101960E947608F80181938F01CC +:10119000E7CF9093910180939001529A5A9A0895C3 +:1011A000909391018093900152985A9AEA9AE9E6B5 +:1011B000F0E080818F7C808308956150770B91E00F +:1011C00001C0990F6A95EAF720E031E0911108C05B +:1011D000222391F05A9A80E28A95F1F75A9808955D +:1011E000492F482339F05A9A232740E24A95F1F7CC +:1011F0009695ECCF5A98F9CF5A98EDCFFF920F936E +:101200001F93CF93DF93EC018C01060F111DC017C4 +:10121000D10731F4DF91CF911F910F91FF90089585 +:10122000F9900E94700868E08F2D0E94DD08EFCFD2 +:101230001F920F920FB60F9211242F933F934F934B +:101240005F936F937F938F939F93AF93BF93CF934E +:10125000DF93EF93FF935A98529AC0919001D091E7 +:1012600091016D81662321F08E819F810E94FE088D +:101270000E94700880E18A95F1F75A9852985A9A1C +:1012800080E18A95F1F76A81662309F18B819C815F +:101290000E94A208E881F981882311F088E001C04A +:1012A00082E080830E946808FF91EF91DF91CF91E7 +:1012B000BF91AF919F918F917F916F915F914F916E +:1012C0003F912F910F900FBE0F901F901895E881BE +:1012D000F981E4CFCF93DF93C0919001D091910138 +:1012E000F894529A5A9885E08A95F1F7000052983E +:1012F0005A9A80E28A95F1F74A9B0CC0529A5A9A00 +:10130000E881F98181E08083789481E090E0DF9149 +:10131000CF9108956D81662381F08E819F810E9417 +:10132000A20881110AC0529A5A9AE881F98182E092 +:101330008083789482E090E0EACF0E94680880E29F +:101340008A95F1F75A98529A80E18A95F1F76A8165 +:10135000662321F08B819C810E94FE080E94700808 +:10136000E881F9811082789490E080E0D0CF90936A +:101370009701809396010895E0919601F09197016D +:10138000309721F00190F081E02D099480E00895DC +:10139000E0919601F0919701309721F00280F3815E +:1013A000E02D09940895209194013091950128171A +:1013B000390771F09093950180939401E091960123 +:1013C000F0919701309721F00680F781E02D099484 +:1013D000089520919201309193012817390771F0F7 +:1013E0009093930180939201E0919601F09197017F +:1013F000309721F00084F185E02D0994089585B798 +:10140000806885BF85B7806885BF08950895089571 +:101410000C94060A08950C940A0A0E94FF090E947F +:10142000070A0C94080A0E9471160E9410050E9477 +:10143000E0160C940B0AAF92BF92CF92DF92EF921C +:10144000FF920F931F93CF93DF9300D000D00F92A2 +:10145000CDB7DEB70E9492050E945806882309F492 +:101460005BC089E9A82E81E0B82E10E000E0C02E14 +:10147000802F0E940405F82EF501D1905F01D81647 +:1014800009F444C08091120281FD0E940A0580E0A7 +:10149000EE24E394DF249D2D9E21A1F18983CA824D +:1014A000FE2081E009F480E08B830E947A1681603F +:1014B000782F9D838C8349815A816B818D810E9415 +:1014C000AD0AF801E756FE4F8081E826E0820E94CF +:1014D000BC0990919801891781F10E94BC09809301 +:1014E00098010F900F900F900F900F90DF91CF9178 +:1014F0001F910F91FF90EF90DF90CF90BF90AF9032 +:101500000C94A3028F5FEE0C873029F60F5F1F4FFC +:101510000830110509F0ABCF8FEF89838A831B82D6 +:101520000E947A168160782F9D838C8349815A812D +:101530006B818D810E94AD0ACACF0F900F900F90E2 +:101540000F900F90DF91CF911F910F91FF90EF902F +:10155000DF90CF90BF90AF900895CF93DF93CDB73A +:10156000DEB72B970FB6F894DEBF0FBECDBF4F830B +:10157000588769877A878B871E8285E0FE013796B8 +:10158000DE01119601900D928A95E1F749815A8109 +:101590006B817C818D819E812B960FB6F894DEBF86 +:1015A0000FBECDBFDF91CF910C946A10FC018081FA +:1015B00091810C94ED13CF93C82F8823F1F18CEF18 +:1015C0008C0F813AA0F46C2F8091090190910A014F +:1015D0000E94B015882329F08C2F0E942A140E94A3 +:1015E00097148C2F0E942314CF910C94971480E2AF +:1015F0008C0F883048F4C77081E001C0880FCA950D +:10160000EAF70E944B14F0CF8BE58C0F833038F44F +:101610002C2F2452330BC901CF910C94D309C85AF3 +:10162000C73158F4EC2FF0E0EE0FFF1FED5AFE4FDC +:1016300080819181CF910C94E909CF9108958823FD +:1016400029F19CEF980F913A20F40E942A140C94EF +:10165000971490E2980F983050F4877091E001C091 +:10166000990F8A95EAF7892F0E945114F0CF9BE5D4 +:10167000980F933020F490E080E00C94D309885ABE +:10168000873120F490E080E00C94E9090895CF932D +:10169000C82F0E94DB0AC93349F42FEF87EE93E08D +:1016A000215080409040E1F700C000008C2FCF9186 +:1016B0000C941F0B882321F00E944B140C94971458 +:1016C0000895882321F00E9451140C9497140895D2 +:1016D000AF92BF92CF92DF92EF92FF920F931F9340 +:1016E000CF93DF9300D000D00F92CDB7DEB76C015F +:1016F0006D837983FC01158112951F7002810111A0 +:101700000E946A140E944114E82E882371F000237D +:10171000B1F08D81805E883090F082E00E94E2140A +:101720000E94411491E0E82EE926A980A2949FE04E +:10173000A922B12CF501E754F24E0C94531DE12C73 +:10174000F4CF19811F70F981F07F11F01295107F8D +:101750000023B1F0112361F08D81805E883018F094 +:101760002D81211109C0812F0E944B140E949714D2 +:101770008D810E94DB0A15C0812F0E945C14F6CF78 +:101780008D810E941F0B112361F08D81805E883056 +:1017900018F04D81411133C0812F0E9451140E94D5 +:1017A000971458E0A51AB10864E0A616B10420F415 +:1017B0000E94BC090E94A302EE2009F4A5C10E9468 +:1017C0003D1480FDA1C1F60112820E9437140E94CF +:1017D0004412C6010E94AB0D0E9437140F900F9067 +:1017E0000F900F900F90DF91CF911F910F91FF906D +:1017F000EF90DF90CF90BF90AF900C947512812F37 +:101800000E946214CCCF59815F70F52E6981607F90 +:10181000603219F0F29480EFF8227D81772369F02D +:10182000713049F1002391F1112351F1F6018581C5 +:1018300080FF9ECF8F70858323C0002381F011111C +:1018400006C00E947E148F290E945A0BAACF113025 +:10185000C1F70E947E148F290E948414A2CF111117 +:1018600006C00E948D148F2D0E94610B9ACF1130FB +:1018700009F497CFF6CF002329F0133008F091CF69 +:101880008F2DE2CF123008F08CCFEDCF112359F31A +:10189000FD81F93349F42FEF47EE53E021504040EA +:1018A0005040E1F700C000008D810E941F0B79CFEE +:1018B0008981837009F050C0011173CF4D81429529 +:1018C00046954770440F440F8D818F7090E0B0E0D3 +:1018D000A0E0042E04C0880F991FAA1FBB1F0A9402 +:1018E000D2F76D8100E010E0980164FF0FC00FE0B7 +:1018F00010E020E030E004C0000F111F221F331F52 +:101900004A95D2F700951095209530957981769576 +:10191000769573707D83B901A801482B592B6A2BEA +:101920007B2B49835A836B837C835D8169817A81B8 +:101930008B819C81523051F0533059F0513019F065 +:101940000E94BA112ECF0E9492112BCF0E94E21159 +:1019500028CF0E94901125CF8695002311F0898110 +:101960008170882309F41DCF4D81429546954770BB +:10197000440F440F8D818F7090E0B0E0A0E0042E02 +:1019800004C0880F991FAA1FBB1F0A94D2F76D814C +:1019900000E010E0980164FF0FC00FE010E020E0CD +:1019A00030E004C0000F111F221F331F4A95D2F7E9 +:1019B0000095109520953095798176957695737080 +:1019C0007D83B901A801482B592B6A2B7B2B4983B6 +:1019D0005A836B837C835D8169817A818B819C8151 +:1019E000523051F0533059F0513019F00E94031326 +:1019F000D8CE0E94DB12D5CE0E942B13D2CE0E94ED +:101A00000E12CFCE69816F706983002329F0862F73 +:101A10000E9444128D8118CF8D810E94610B8981B3 +:101A20000E947512BECE7D81723FA1F160F4703FBD +:101A3000E1F0713F41F1002309F445C0111198CE46 +:101A400089818F7124C08D81833F49F1843F99F74B +:101A5000002379F199819F719983892F0E94441203 +:101A600063E089810E94CD149CCE002341F01230A6 +:101A700008F097CE89818F710E94AA1292CE1330FE +:101A800008F08FCEF7CF89818F71002349F20E9431 +:101A9000441287CE89818F710023C9F3C1CF0023FF +:101AA00029F089818F710E941F127BCE0E941A1229 +:101AB00078CE81E00E94E214123008F472CE82E007 +:101AC0000E94E2146ECE112361F0ED81E93309F03A +:101AD000EBCEFFEF27EE43E0F15020404040E1F72E +:101AE000E1CE89818F719CCF49814F706D81C60194 +:101AF0000E94FC020E94041154CE49814F706D81F6 +:101B0000C6010E94FF024DCE0F900F900F900F90D4 +:101B10000F90DF91CF911F910F91FF90EF90DF9089 +:101B2000CF90BF90AF9008950F931F93CF93DF9303 +:101B3000EC01688179818A810E94F9138C010E94ED +:101B400053130E948F11B801CE01DF91CF911F91E5 +:101B50000F910C94680BCF93DF93EC018B819C81E8 +:101B6000892B29F08881998189238F3F19F4DF918E +:101B7000CF910895CE010E94C1028823C1F3CE0106 +:101B80000E94940DCE01DF91CF910C9488020E94A7 +:101B90006A140E947B140C9497140E9431140C94C4 +:101BA000C70D0E9459140C94CD0D282F892F8295B2 +:101BB0008F70903C80F48A30B0F4843020F482300E +:101BC00090F480E008958630E1F781E0283E88F0C7 +:101BD000213FB9F70EC08C3011F08F3091F793FB95 +:101BE000882780F9089581E0203F39F018F4283ED5 +:101BF00040F70895243F29F7FCCF08950E94ED1384 +:101C00000C94D50DCF93DF9300D000D00F92CDB7B9 +:101C1000DEB70F900F900F900F900F90DF91CF9144 +:101C20000895CF93DF9300D000D000D0CDB7DEB7BA +:101C300026960FB6F894DEBF0FBECDBFDF91CF91D1 +:101C400008951F93CF93DF93E091A20116E0809156 +:101C5000A3018E1304C0DF91CF911F910895CE2F61 +:101C6000D0E01E9FF0011124EC55FE4F40815181C0 +:101C700062817381848195810E94110EFE013196EB +:101C8000E770E5CF4091D4015091D5016091D60124 +:101C90007091D7018091D8019091D9010C94110EC7 +:101CA0001F93CF93DF938091D901807FC1F48091FE +:101CB000D6018823A1F08091A201C091A301609177 +:101CC000D4017091D5014091D7015091D801D62F00 +:101CD000D723DA01A095B09516E0C81304C0DF91B0 +:101CE000CF911F91089590E04115510511F0DF3F0C +:101CF00031F401968770F1CF2A0F3B1F17C0189F50 +:101D0000F001199FF00D1124EC55FE4F218127138E +:101D1000F0CF20812613EDCF22812111EACF23813C +:101D200034812417350740F3241B350B283C31053B +:101D300000F72091D9012F7020612093D90126E06E +:101D4000289FF001299FF00D1124E755FE4F808157 +:101D50008F708061808384ED91E00E94AB0DDF91F4 +:101D6000CF911F910C94210E9F92AF92BF92CF9270 +:101D7000DF92EF92FF920F931F93CF93DF93CDB734 +:101D8000DEB72B970FB6F894DEBF0FBECDBF8C0128 +:101D900085E0F801DE01179601900D928A95E1F732 +:101DA000D8014C9111965C9111971296EC90129774 +:101DB0008091D7019091D801009709F46CC12091CE +:101DC000D4013091D501632F62236F3F09F463C1C1 +:101DD0001396CD90DC909090D601992009F4FAC02A +:101DE000C816D90608F43FC0F601E81BF90BCF016D +:101DF000FF24F394883C910508F0F12C84EDA82E83 +:101E000081E0B82E8091D901982F907FFF2009F4AE +:101E1000B9C0911180C0FE2C35132AC0241328C0EC +:101E2000E11026C08F7080618093D9010E94420E1C +:101E3000C5010E94AB0D8091D901D80115968C93F4 +:101E40008F2D2B960FB6F894DEBF0FBECDBFDF915E +:101E5000CF911F910F91FF90EF90DF90CF90BF90A7 +:101E6000AF909F900895809590958C0D9D1DC0CF4B +:101E7000CD2829F0842F85238F3F09F028C180E0E9 +:101E8000B82FB170DB2EE091A2012091A30136E0C2 +:101E900080FD1CC0EE20A1F28091D9018160809369 +:101EA000D901F12CCDCF8E2F90E03E9FF00111246F +:101EB000EC55FE4F6181651306C06081641303C059 +:101EC00062816E11E7CFFC013196E770E213EBCF30 +:101ED0004F8358878F8198850E94ED13292F229573 +:101EE0002F70903260F0225F2F70223078F49F7054 +:101EF00051F0F8019581907F31F4D12C0AC09F7088 +:101F000011F08823D1F3805E8830B8F3C8010E94B5 +:101F1000AB0DFD2C95CF351306C0241304C0D8019A +:101F2000EE2009F47CC04F8358878F8198850E94EA +:101F3000FE0D882319F1EE2009F18091D90180323C +:101F400070F02091D4013091D5013A8329831B820E +:101F5000DD82CC828E83CE0101960E94AB0D86E09D +:101F6000F801A4EDB1E001900D928A95E1F70E948D +:101F7000500E0E94420EFF24F39462CFC8010E94CB +:101F8000AB0DF9CF911113C07C2DDB86CA866E2D67 +:101F90008B850E94020E84ED91E00E94AB0D86E0DD +:101FA000F50111928A95E9F70E94420E49CF351347 +:101FB000BACF2413B8CFE110B6CFD80115968C93C1 +:101FC000C8010E94AB0D86E0F50111928A95E9F7F0 +:101FD000F92C36CFC816D90680F1B601681B790BEB +:101FE000CB01F12C883C910508F046C0FE2CEE2078 +:101FF00029F2351330C024132EC08091D90180FD01 +:1020000021C0982F907FF1F0D80115968C931597E9 +:10201000903F39F0982F907F905F8F70892B1596A5 +:102020008C93C8010E94AB0D86E0F801A4EDB1E0ED +:1020300001900D928A95E1F7B7CF809590958C0D20 +:102040009D1DCFCF86E0F801A4EDB1E001900D9287 +:102050008A95E1F7F5CE4F8358878F8198850E9446 +:10206000FE0D81117CCF8091D90181608093D901CF +:10207000C8010E94AB0DE4CE7C2DDB86CA866E2D96 +:102080008B850E94020E86E0E4EDF1E0DF011D92F7 +:102090008A95E9F789CFEE2009F470CF4F835887EE +:1020A0008F8198850E94FE0DF82E882309F466CF53 +:1020B00086E0F801A4EDB1E001900D928A95E1F778 +:1020C00084ED91E00E94D60A0E94500E6DCF81E00F +:1020D0008E25D6CE1F93CF93DF93CDB7DEB72C9747 +:1020E0000FB6F894DEBF0FBECDBF4F835887698708 +:1020F0007A878B879C87CE0107960E94B40E88232F +:1021000069F08A859B85892B39F04F815885842F0A +:1021100085238F3F09F071C016E05FC086E0FE01A5 +:102120003796DE01119601900D928A95E1F78A8526 +:102130009B85892B89F388859F8189238F3F61F354 +:102140002091A30130E0C901019687709927409141 +:10215000A2014817190671F40E94D10D1092A30133 +:102160001092A20186E0E4EDF1E0DF011D928A9574 +:10217000E9F7D2CF96E0929FD001939FB00D112442 +:10218000AC55BE4FFE01319601900D929A95E1F744 +:102190008093A3010E94210EBFCF819FC001112413 +:1021A0008C559E4F0E94B40E8823E9F0E091A20165 +:1021B0001E9FF0011124EC55FE4F40815181628138 +:1021C0007381848195810E94110E8091A20190E01B +:1021D0000196877099278093A2018091A201909126 +:1021E000A3018913DACF2C960FB6F894DEBF0FBE89 +:1021F000CDBFDF91CF911F91089569857A858B8539 +:102200009C850E94110E88CFEF92FF920F931F932F +:10221000CF93DF938C01892B89F0F12CEE24E3948A +:10222000E8012196F8018491843709F457C0A0F49D +:10223000823009F43EC048F48130D1F0DF91CF9173 +:102240001F910F91FF90EF9008959CEF980F90379A +:10225000A8F70E94DB0A0AC0853709F44CC09CE746 +:10226000980F903758F78F770E941F0B8E0116C07A +:102270000E5F1F4FFE01849190E2980F983060F43A +:102280008770FE2D01C0FF0F8A95EAF78F2F0E94FD +:102290006D140E94971402C00E94DB0A8F2D81509A +:1022A00008F4BECFEFE9FFE03197F1F700C000007E +:1022B000F6CF0E5F1F4FFE01849190E2980F983089 +:1022C00050F48770FE2D01C0FF0F8A95EAF78F2F1B +:1022D0000E947314DECF0E941F0BE0CF0E5F1F4FD2 +:1022E000FE01C491C150D0F28FE99FE00197F1F750 +:1022F00000C00000F7CF0E5F1F4FFE01F490CECF5D +:1023000008950C9480110E948111609301027093D2 +:10231000020280930302909304020C94C70D089567 +:102320000C948311CF93DF9300D000D0CDB7DEB7EC +:1023300069837A838B839C8380910102909102024E +:10234000A0910302B091040229813A814B815C8102 +:10235000282B392B4A2B5B2B29833A834B835C83B5 +:10236000CA01B9010F900F900F900F90DF91CF919C +:102370000C948311CF93DF9300D000D0CDB7DEB79C +:1023800069837A838B839C838091010290910202FE +:10239000A0910302B091040229813A814B815C81B2 +:1023A000282339234A235B2329833A834B835C8385 +:1023B000CA01B9010F900F900F900F90DF91CF914C +:1023C0000C948311CF93DF9300D000D0CDB7DEB74C +:1023D00069837A838B839C838091010290910202AE +:1023E000A0910302B091040229813A814B815C8162 +:1023F000282739274A275B2729833A834B835C8325 +:10240000CA01B9010F900F900F900F90DF91CF91FB +:102410000C9483110C9480110C940A120E940C12DB +:102420006093FD017093FE018093FF019093000281 +:102430000C94C70D60E070E0CB010C940E120F936A +:102440001F93CF93DF9300D000D0CDB7DEB741E02C +:1024500050E060E070E08A019B0104C0000F111F92 +:10246000221F331F8A95D2F709831A832B833C835B +:10247000C901B8010F900F900F900F90DF91CF918D +:102480001F910F910C940E120F931F93CF93DF9314 +:1024900000D000D0CDB7DEB741E050E060E070E0A2 +:1024A00004C0440F551F661F771F8A95D2F780918D +:1024B000FD019091FE01A091FF01B09100028A01FF +:1024C0009B01082B192B2A2B3B2B09831A832B8367 +:1024D0003C83C901B8010F900F900F900F90DF91CE +:1024E000CF911F910F910C940E120F931F93CF93C6 +:1024F000DF9300D000D0CDB7DEB741E050E060E020 +:1025000070E004C0440F551F661F771F8A95D2F7ED +:1025100040955095609570958091FD019091FE01D8 +:10252000A091FF01B09100028A019B0108231923A9 +:102530002A233B2309831A832B833C83C901B801D7 +:102540000F900F900F900F90DF91CF911F910F91EF +:102550000C940E120F931F93CF93DF9300D000D0F3 +:10256000CDB7DEB741E050E060E070E004C0440F5A +:10257000551F661F771F8A95D2F78091FD019091B4 +:10258000FE01A091FF01B09100028A019B01082782 +:1025900019272A273B2709831A832B833C83C901E8 +:1025A000B8010F900F900F900F90DF91CF911F9176 +:1025B0000F910C940E12CF93DF9300D000D0CDB7C3 +:1025C000DEB769837A838B839C838091FD01909130 +:1025D000FE01A091FF01B091000229813A814B8157 +:1025E0005C81282B392B4A2B5B2B29833A834B8325 +:1025F0005C83CA01B9010F900F900F900F90DF918B +:10260000CF910C940E12CF93DF9300D000D0CDB7B2 +:10261000DEB769837A838B839C838091FD019091DF +:10262000FE01A091FF01B091000229813A814B8106 +:102630005C81282339234A235B2329833A834B83F4 +:102640005C83CA01B9010F900F900F900F90DF913A +:10265000CF910C940E12CF93DF9300D000D0CDB762 +:10266000DEB769837A838B839C838091FD0190918F +:10267000FE01A091FF01B091000229813A814B81B6 +:102680005C81282739274A275B2729833A834B8394 +:102690005C83CA01B9010F900F900F900F90DF91EA +:1026A000CF910C940E120895E82F27E0929FE00D31 +:1026B00011248E2F877041E001C0440F8A95EAF7FC +:1026C000E695E695E69585E0E89FF0011124E6524F +:1026D000FE4F30E020E070E05191DF011197CB0117 +:1026E000022E02C0969587950A94E2F78170819533 +:1026F0008527842385278C932F5F3F4F2530310515 +:1027000059F70895E82F27E0929FE00D11249E2F9E +:102710009770E695E695E69585E0E89FF00111242F +:10272000E652FE4F50E040E080E0219130E0092E7B +:1027300002C0369527950A94E2F721703327042EBC +:1027400001C0220F0A94EAF7822B4F5F5F4F45309A +:10275000510559F70895BF92CF92DF92EF92FF9201 +:102760000F931F93CF93DF938C01C090FD01D09006 +:10277000FE01E090FF01F090000280910102909133 +:102780000202A0910302B0910402C82AD92AEA2ABF +:10279000FB2ACFE1D0E0BC2ED701C6010C2E04C02D +:1027A000B695A795979587950A94D2F780FD0EC0A8 +:1027B000219788F7B12C8B2DDF91CF911F910F912D +:1027C000FF90EF90DF90CF90BF900895B8018C2FCD +:1027D0000E941C03019761F3EECFCF93DF93D82FB4 +:1027E000C92F0E94AB136D2F7C2FDF91CF910C94DA +:1027F0001C031F93CF93DF93162FD72F9091A10126 +:10280000992339F0862F972FDF91CF911F910C9448 +:10281000ED13882391F0862F972F0E94AB13C82FBA +:10282000682F812F9D2F0E945413612F7D2F8C2F95 +:10283000DF91CF911F910C941C03862F972F0E943C +:102840008213C82FF2CF682F8091090190910A015D +:102850000C94EA15682F8091090190910A010C945B +:10286000EC158091090190910A010C94EE1580916C +:102870000502859585958595089580910502877057 +:10288000089590910502977081E009F480E0089521 +:1028900080911102089590911102982B909311024A +:1028A0000895982F909580911102892380931102A9 +:1028B000089510921102089590911002982B909310 +:1028C00010020895982F909580911002892380938B +:1028D0001002089510921002089590910F02982B03 +:1028E00090930F020895982F909580910F0289235D +:1028F00080930F02089510920F02089580910602AE +:10290000089508950C94811490910602981721F06F +:10291000809306020C948214089580910602882305 +:1029200029F01092060280E00C9482140895E09140 +:102930000901F0910A01809111028083E09109015F +:10294000F0910A01808190911002892B8083E0919F +:102950000901F0910A01808190910F02892B8083F7 +:1029600090910602992381F0E0910901F0910A010A +:102970008081892B80838091090190910A010E94B6 +:102980009E1581110E948D148091090190910A0178 +:102990000C94C80908950C94CA1498E0899F90017A +:1029A0001124622B609305020E944412809105025B +:1029B0008595859585950C94CB141092050280E041 +:1029C0000C94CB1490910502809589238093050285 +:1029D000282F277071F4282F082E000C330B921724 +:1029E000130639F08595859585950E9475120C948E +:1029F000DD14089590E080E00E94611D9C0181E05B +:102A00002C3E3E4F09F080E0089582E090E00C9467 +:102A1000591D83E090E00C94591DCF9384E090E021 +:102A20000E94591DC82F81E290E00E94591D982FE5 +:102A30008C2FCF910895CF93682FC92F84E090E019 +:102A40000E94671D6C2F81E290E0CF910C94671D6E +:102A5000AB01BC018FE090E00C94791DAB01BC018F +:102A600083E190E00C94791D60E070E0CB010C9460 +:102A70002E1560E070E0CB010E9428150C943415EF +:102A80006CEE7EEF90E080E00E94851D60E082E0C9 +:102A900090E00E94671D60E083E090E00E94671D67 +:102AA000109201021092020210920302109204028C +:102AB00060E084E090E00E94671D60E081E290E0C9 +:102AC0000E94671D60E085E090E00E94671D60E065 +:102AD00086E090E00E94671D6FEF87E090E00E9423 +:102AE000671D40E050E0BA0188E090E00E94791D47 +:102AF00060E08DE090E00E94671D40E050E0BA0188 +:102B000088E190E00E94791D60E087E190E00E94FA +:102B1000671D40E050E0BA018CE190E00E94791D11 +:102B200060E080E290E00E94671D0C9439150C94DF +:102B30004015682F8EE090E00C94671DAC019C015D +:102B40002E5F3F4F485F5F4F80E02417350709F441 +:102B50000895F90191919F019923B9F38F5FF5CF02 +:102B60009C01662351F0FC013296285F3F4F819112 +:102B7000861729F0E217F307D1F780E0089581E086 +:102B800008959C01FC0132968FEF90E04191461729 +:102B900051F08F3F19F4411101C0892F9F5F96308A +:102BA000A9F78F3F09F40895280F311D87FD3A9545 +:102BB000F901628308959C01FC013296285F3F4F22 +:102BC0008191861303C0DF0111971C92E217F3076E +:102BD000B9F708950C94C1150C94DB15FC013296DD +:102BE00086E0DF011D928A95E9F70895089508951A +:102BF0000C94F7150E94F81580913B02843049F13E +:102C00001092130288E190E020E40FB6F894A895A2 +:102C1000809360000FBE2093600080E00E94A302BA +:102C20000E94F81583B7817F846083BF83B781607A +:102C300083BF7894889583B78E7F83BF0FB6F8944F +:102C4000A895809160008861809360001092600078 +:102C50000FBE08950895CF930E94F6150E94920525 +:102C60000E942A16C0E08C2F0E940405811105C025 +:102C7000CF5FC830C1F7CF91089581E0FCCF0895B0 +:102C80000C943F160E94D10D0E94BC090E94A30221 +:102C90000C9440161F921FB61F9211248F939F937E +:102CA000AF93BF9380911302811113C080913102C1 +:102CB00090913202A0913302B09134024196A11D4D +:102CC000B11D8093310290933202A0933302B093EE +:102CD0003402BF91AF919F918F911F901FBE1F90A3 +:102CE000189582E084BD93E095BD9AEF97BD8093DF +:102CF0006E0008952FB7F8948091310290913202BE +:102D0000A0913302B09134022FBF0895CF92DF9289 +:102D1000EF92FF929C014FB7F8948091310290910D +:102D20003202A0913302B09134024FBF6C017D0199 +:102D3000EE24FF24A90170E060E0C416D506E60683 +:102D4000F70638F0821B930BFF90EF90DF90CF9047 +:102D500008950197F7CF78941F921FB61F92112400 +:102D60008F939F93AF93BF938091310290913202E2 +:102D7000A0913302B09134020196A11DB11D809340 +:102D8000310290933202A0933302B0933402BF9188 +:102D9000AF919F918F911F901FBE1F90189587E74D +:102DA00097E7909301088093000888E19AE00FB6B6 +:102DB000F894A895809360000FBE90936000FFCFB9 +:102DC000CF93DF9300D000D0CDB7DEB70E94FA14C6 +:102DD000811102C00E9497150E940515809312026E +:102DE0000E940D1590933602809335020E940915BA +:102DF000282F30E050E040E029833A834B835C8306 +:102E0000CA01B9010F900F900F900F90DF91CF91F1 +:102E10000C94901180911C02089508950895CF9309 +:102E2000DF93D82FC92F0E94AE18823011F0843062 +:102E300049F581E08093E9008FEF9091E80081509F +:102E400095FD06C095ED9A95F1F700008111F5CF3B +:102E50008091E80085FF16C050E040E068E070E037 +:102E60008D2F9C2F0E94CB188091E8008E77809345 +:102E7000E80088E0ED2FFC2FA4E1B2E001900D9274 +:102E80008A95E1F7DF91CF910895089580913A02F4 +:102E9000811109C00E94531A0E94B01A8091E20069 +:102EA00084608093E200089510923A020895089594 +:102EB00008950C94421642E061EC81E00C94CF1925 +:102EC00080913D02893089F148F4823009F49DC037 +:102ED000833009F458C0813041F008958A3009F4F4 +:102EE00084C08B3009F46AC0089580913C02813A15 +:102EF00009F048C08091E800877F8093E8008091C6 +:102F0000400290914102892B61F468E084E192E0F3 +:102F100070E00E941A198091E8008B778093E80096 +:102F2000089560E090E080E0F3CF80913C02813230 +:102F300049F58091400290914102892B19F58091C9 +:102F4000E800877F8093E8008091E80082FF16C048 +:102F50009091F3008091F200029729F48091F100A2 +:102F60008B7F813021F48091F10080931C0280914D +:102F7000E8008B778093E8000C94031A80913B0261 +:102F80008111E2CF089580913C02813AD9F7809176 +:102F9000400290914102892BA9F78091E800877F38 +:102FA0008093E8008091E80080FFFCCF80911501BC +:102FB0008093F1008091E8008E77DCCF80913C0215 +:102FC000813201F78091400290914102892BD1F624 +:102FD0008091E800877F8093E8000E94031A809127 +:102FE0003E02809315010C94D10D80913C028132F8 +:102FF00049F68091E800877F8093E8000E94031AD9 +:1030000080913F0280931D02089580913C02813A95 +:1030100009F0B8CF8091E800877F8093E800809125 +:10302000E80080FFFCCF80911D02C2CF84B7877F6C +:1030300084BF0FB6F894A895809160008861809352 +:103040006000109260000FBE80E890E00FB6F89428 +:1030500080936100909361000FBE0E940D0A0E9450 +:10306000531A0E94B01A8091E20084608093E200BB +:1030700078940E94381D0E94130A8BE091E00E9410 +:10308000B70980913B02853019F00E941B0AF9CFE5 +:103090000E94FA1580913902882399F30E942B1619 +:1030A000882379F30E94B518ECCF0C9457189C0133 +:1030B000FB01DA01832F992783309105C1F068F471 +:1030C0008130910509F43DC0029761F482E290E0FD +:1030D0002AE733E02D933C9308958132910519F14D +:1030E000829741F190E080E030E020E0F3CFC90129 +:1030F00099272230A9F08330910550F4009769F0A8 +:10310000E0E6F3E0019771F7849190E09F01E2CF50 +:10311000ECE4F3E00397C1F3E5CFE6E7F3E0F4CFA7 +:10312000E2E5F3E0F1CF89E090E02CE833E0EF2B2B +:10313000C9F6D0CF80E490E02EEA33E0EF2B91F691 +:10314000C9CF82E190E02CE933E0C4CF80913B020B +:10315000843011F482E0089581E0089580911E0288 +:10316000811102C00C94A618089580E189BD82E106 +:1031700089BD09B400FEFDCF8091D8008F7D80937A +:10318000D8008091E00082608093E0008091E000B0 +:1031900081FDFCCF0895AF92BF92CF92DF92FF9254 +:1031A0000F931F93CF93DF936C01EB018A010E9471 +:1031B000221AF82E811123C00115110539F0F801EA +:1031C00080819181C81BD90BC80ED91EB12CA12CAE +:1031D0002097A9F08091E80085FD22C08091E80049 +:1031E0008E778093E80001151105A1F0F801808128 +:1031F0009181A80EB91EB182A08285E0F82E8F2D94 +:10320000DF91CF911F910F91FF90DF90CF90BF90F2 +:10321000AF9008950E94221A8823D1F2F82EEFCFA2 +:10322000F60181916F018093F1002197FFEFAF1AB2 +:10323000BF0ACECFFC01CB01209142023091430264 +:103240002617370790F0009729F42091E8002E7791 +:103250002093E80040E0009751F4411108C08091AC +:10326000E80082FF31C080E00895C901F3CF2091CA +:103270003B022223A9F12530A9F12091E80023FD8A +:103280002DC02091E80022FDEACF2091E80020FF28 +:10329000E2CF3091F3002091F200009719F028302E +:1032A000310558F041E02830310509F040E0209127 +:1032B000E8002E772093E800CECF41914093F100B3 +:1032C00001972F5F3F4FE9CF80913B02882341F068 +:1032D000853041F08091E80083FFC1CF81E00895FF +:1032E00082E0089583E00895FC01CB012091420221 +:1032F000309143022617370790F0009729F4209168 +:10330000E8002E772093E80040E0009751F4411147 +:1033100008C08091E80082FF32C080E00895C901B2 +:10332000F3CF20913B022223B1F12530B1F120915E +:10333000E80023FD2EC02091E80022FDEACF209175 +:10334000E80020FFE2CF3091F3002091F2000097D7 +:1033500019F02830310558F041E02830310509F0E6 +:1033600040E02091E8002E772093E800CECF4491F2 +:103370004093F100319601972F5F3F4FE8CF809146 +:103380003B02882341F0853041F08091E80083FFC3 +:10339000C0CF81E0089582E0089583E00895982FDA +:1033A000973028F08F708093E90081E00895909322 +:1033B000E900242F762F50E0981731F07091EC003F +:1033C0002091ED005091F00021FD02C09F5FE8CFF9 +:1033D0003091EB003E7F3093EB003091ED003D7F6C +:1033E0003093ED003091EB0031603093EB0070933F +:1033F000EC002093ED005093F0002091EE0027FDAB +:10340000E5CF80E0089580913C0287FF13C0809152 +:10341000E80082FF06C08091E8008B778093E80087 +:1034200004C080913B028111F2CF089580913B024C +:103430008823D9F38091E80080FFF8CF8091E800DD +:103440008E77ECCF2091E4003091E50095E6A9015C +:103450002091EC00822F817020FF06C08091E8004F +:1034600080FF06C080E008952091E80022FD1AC088 +:1034700080913B02882389F0853089F08091EB00B0 +:1034800085FD0FC02091E4003091E50042175307FD +:10349000F9F29150E1F684E0089582E0089583E026 +:1034A000089581E008950E94C11A0E94C91AE0EEB1 +:1034B000F0E0808181608083E8EDF0E080818F77AB +:1034C000808319BCA7EDB0E08C918E7F8C938081B6 +:1034D0008F7E808310923A0208950F931F93CF93AB +:1034E000DF930E94C11A0E94C91AC8EDD0E08881FA +:1034F0008F77888388818068888388818F7D88839F +:1035000019BC10923B0210923702109239021092AD +:10351000380200EE10E0F80180818B7F8083888183 +:103520008160888342E060E080E00E94CF19E1EE94 +:10353000F0E080818E7F8083E2EEF0E08081816028 +:103540008083808188608083F80180818E7F808382 +:10355000888180618883DF91CF911F910F910895B9 +:10356000E8EDF0E080818F7E8083E7EDF0E0808100 +:103570008160808384E082BF81E080933A020C9472 +:103580006D1AE8EDF0E080818E7F80831092E2007A +:1035900008951092DA001092E10008951F920F92A0 +:1035A0000FB60F9211242F933F934F935F936F9316 +:1035B0007F938F939F93AF93BF93EF93FF938091EC +:1035C000E10082FF0BC08091E20082FF07C0809182 +:1035D000E1008B7F8093E1000E94371D8091DA002B +:1035E00080FF19C08091D80080FF15C08091DA005B +:1035F0008E7F8093DA008091D90080FF94C080E1B3 +:1036000089BD82E189BD09B400FEFDCF81E08093D0 +:103610003B020E9446178091E10080FF19C0809113 +:10362000E20080FF15C08091E2008E7F8093E2006F +:103630008091E20080618093E2008091D8008062F6 +:103640008093D80019BC85E080933B020E945817F4 +:103650008091E10084FF29C08091E20084FF25C0B1 +:1036600080E189BD82E189BD09B400FEFDCF809172 +:10367000D8008F7D8093D8008091E1008F7E809369 +:10368000E1008091E2008F7E8093E2008091E20071 +:1036900081608093E20080913702882309F449C059 +:1036A00084E080933B020E9459178091E10083FFE0 +:1036B00029C08091E20083FF25C08091E100877FCF +:1036C0008093E10082E080933B0210923702809168 +:1036D000E1008E7F8093E1008091E2008E7F8093F5 +:1036E000E2008091E20080618093E20042E060E0CD +:1036F00080E00E94CF198091F00088608093F000F4 +:103700000E945717FF91EF91BF91AF919F918F91B9 +:103710007F916F915F914F913F912F910F900FBECD +:103720000F901F90189519BC10923B020E945417DD +:1037300072CF8091E30087FD02C081E0B2CF83E0C9 +:10374000B0CF1F920F920FB60F9211242F933F9379 +:103750004F935F936F937F938F939F93AF93BF9399 +:10376000CF93DF93EF93FF93D091E900DF708091C7 +:10377000EC00C82FC17080FDC0E81092E900809174 +:10378000F000877F8093F00078940E94E51B1092F0 +:10379000E9008091F00088608093F000CD2BCF701D +:1037A000C093E900FF91EF91DF91CF91BF91AF916D +:1037B0009F918F917F916F915F914F913F912F9149 +:1037C0000F900FBE0F901F9018951F93CF93DF930C +:1037D000CDB7DEB7AA970FB6F894DEBF0FBECDBF48 +:1037E0008CE392E0FC0101962091F100208322E01D +:1037F00084349207B9F70E9460178091E80083FF34 +:103800001EC180913C0290913D029A3008F017C190 +:10381000E92FF0E0E753F24E0C94531D803899F0F5 +:10382000823809F00CC1809140028F70873008F017 +:1038300006C18093E9008091EB0085FB882780F921 +:103840001092E90006C080913802909139029111DE +:1038500082609091E800977F9093E8008093F10058 +:103860001092F1008091E8008E77E5C0882309F47A +:10387000D3C0823009F0E3C080913E028111D6C0EE +:10388000809140028F702FEF280F263008F0D7C0AC +:103890008093E9002091EB0020FFC8C0933031F401 +:1038A0008091EB0080628093EB00C0C09091EB00B0 +:1038B00090619093EB0021E030E001C0220F8A95E7 +:1038C000EAF72093EA001092EA008091EB0088600A +:1038D000EACF8111B4C010913E021F778091E300BE +:1038E0008078812B8093E3008091E800877F80932C +:1038F000E8000E94031A8091E80080FFFCCF8091CD +:10390000E30080688093E30082E0111183E08093FC +:103910003B0295C08058823008F091C080913E02F1 +:1039200090913F028C3D23E09207A1F583E08A83CA +:103930008AE289834FB7F894DE01139620E03EE0D7 +:1039400051E2E32FF0E050935700E49120FF03C0D1 +:10395000E295EF703F5FEF708E2F90E0EA30C0F09D +:10396000C7968D939D932F5F243159F74FBF809158 +:10397000E800877F8093E8006AE270E0CE0101965C +:103980000E941A198091E8008B778093E80057C055 +:10399000C096E7CF6091400270914102AE014F5F47 +:1039A0005F4F0E945518BC01892B09F448C08091D3 +:1039B000E800877F8093E80089819A810E947419CA +:1039C000E1CF8038E1F58091E800877F8093E800BF +:1039D000809137028093F10045CF811130C09091E2 +:1039E0003E02923060F58091E800877F8093E80086 +:1039F000909337020E94031A80913702882311F0B6 +:103A000084E005C08091E30087FDFACF81E08093D8 +:103A10003B020E945B1713C080913E02813079F413 +:103A200081E0933009F080E0809339021092E90040 +:103A30008091E800877F8093E8000E94031A8091BC +:103A4000E80083FF0AC08091E800877F8093E80048 +:103A50008091EB0080628093EB00AA960FB6F894F9 +:103A6000DEBF0FBECDBFDF91CF911F9108950895A6 +:103A7000CF9380913B028823A1F0C091E900CF70E1 +:103A80009091EC00892F817090FD80E8C82B1092F6 +:103A9000E9008091E80083FD0E94E51BCF70C09390 +:103AA000E900CF910895EE0FFF1F0590F491E02DEE +:103AB0000994F999FECF92BD81BDF89A992780B5F6 +:103AC0000895A8E1B0E042E050E00C948D1D262F4F +:103AD000F999FECF92BD81BDF89A019700B4021604 +:103AE00039F01FBA20BD0FB6F894FA9AF99A0FBEB2 +:103AF00008950396272F0E94681D0E94671D252F99 +:103B00000E94681D242F0C94681D0196272F0E9487 +:103B1000681D0C94671DDC01CB01FC01F999FECFF7 +:103B200006C0F2BDE1BDF89A319600B40D92415045 +:103B30005040B8F70895F894FFCFB307B907BD0711 +:103B4000CB07CF07D307D707DD07E507E907ED0761 +:103B5000F107FD070108050809080F082D081708D7 +:103B6000C107C707F507F907E10713082308360857 +:103B70003A08A10BA10B030C030CD10BD10BD10BF9 +:103B8000D10B580C020D130D130D740DD10BD10B6D +:103B90007D0D0E1C361C1F1D361C1F1D691C8A1C2A +:063BA0001F1DE11CED1CDD +:103BA60001870100880104880107020A170F170D13 +:103BB600170E17451701E200E900EA00B500B60046 +:103BC600B700CD008301CC008A0192019401210245 +:103BD600230224022502260227022A02B300B40089 +:103BE6006F007000F4F5F6F7313332946697C6002D +:103BF600000000E200E900EA00B500B600B700CD1B +:103C0600008301CC008A019201940121022302243F +:103C1600022502260227022A02B300B4006F0070B2 +:023C260000009C +:00000001FF diff --git a/other/qmk/pinky3_main/pinky_3_layout_main.json b/other/qmk/pinky3_main/pinky_3_layout_main.json new file mode 100644 index 0000000..1f91246 --- /dev/null +++ b/other/qmk/pinky3_main/pinky_3_layout_main.json @@ -0,0 +1,323 @@ +{ + "version":1, + "notes":"", + "documentation":"\"This file is a QMK Configurator export. You can import this at . It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: \n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", + "keyboard":"pinky/3", + "keymap":"pinky_3_layout_main", + "layout":"LAYOUT", + "layers":[ + [ + "LCAG_T(KC_ESC)", + "KC_Q", + "KC_W", + "KC_E", + "KC_R", + "KC_T", + "KC_LBRC", + "KC_RBRC", + "KC_Y", + "KC_U", + "KC_I", + "KC_O", + "KC_P", + "KC_BSPC", + "LCTL_T(KC_TAB)", + "KC_A", + "KC_S", + "KC_D", + "KC_F", + "KC_G", + "KC_LPRN", + "KC_RPRN", + "KC_H", + "KC_J", + "KC_K", + "KC_L", + "KC_SCLN", + "KC_ENT", + "KC_LSPO", + "KC_Z", + "KC_X", + "KC_C", + "KC_V", + "KC_B", + "MO(3)", + "TT(1)", + "KC_N", + "KC_M", + "KC_COMM", + "KC_DOT", + "KC_SLSH", + "KC_QUOT", + "KC_LALT", + "KC_LGUI", + "TT(2)", + "KC_INS", + "MO(4)", + "KC_SPC", + "KC_PSCR", + "MO(5)" + ], + [ + "KC_TAB", + "KC_LT", + "KC_UP", + "KC_GT", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_SLSH", + "KC_7", + "KC_8", + "KC_9", + "KC_PLUS", + "KC_BSPC", + "KC_ESC", + "KC_LEFT", + "KC_DOWN", + "KC_RGHT", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_CIRC", + "KC_ASTR", + "KC_4", + "KC_5", + "KC_6", + "KC_MINS", + "KC_PERC", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_CALC", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_0", + "KC_1", + "KC_2", + "KC_3", + "KC_EQL", + "KC_ENT", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_DEL", + "KC_BSPC", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PGDN", + "KC_HOME", + "KC_NO", + "KC_NO", + "KC_LEFT", + "KC_DOWN", + "KC_UP", + "KC_RGHT", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_PGUP", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_GRV", + "KC_EXLM", + "KC_AT", + "KC_HASH", + "KC_DLR", + "KC_PERC", + "KC_NO", + "KC_NO", + "KC_CIRC", + "KC_AMPR", + "KC_ASTR", + "KC_F11", + "KC_F12", + "KC_UNDS", + "KC_NO", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F4", + "KC_F5", + "KC_NO", + "KC_NO", + "KC_F6", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_BSLS", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_BRIU", + "KC_NO", + "KC_NO", + "KC_MPLY", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_BRID", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_MPRV", + "KC_VOLD", + "KC_VOLU", + "KC_MNXT", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_MUTE", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS", + "KC_NO", + "KC_NO", + "KC_NO" + ], + [ + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_NO", + "KC_TRNS" + ] + ], + "author":"Ian Keane" +} diff --git a/windows/_vimrc b/windows/_vimrc new file mode 100644 index 0000000..2e0ee33 --- /dev/null +++ b/windows/_vimrc @@ -0,0 +1,436 @@ + +" vim-plug {{{ + " Automatic installation +" if empty(glob('~/.vim/autoload/plug.vim')) +" silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs +" \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim +" autocmd VimEnter * PlugInstall --sync | source $MYVIMRC +" endif + + call plug#begin('~/.vim/plugins') + + Plug 'junegunn/vim-easy-align' + Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --bin --all' } + Plug 'tpope/vim-surround' + Plug 'tpope/vim-commentary' + Plug 'w0rp/ale' + Plug 'airblade/vim-gitgutter' + Plug 'itchyny/lightline.vim' + Plug 'tpope/vim-repeat' + Plug 'haya14busa/incsearch.vim' + Plug 'gorodinskiy/vim-coloresque' + Plug 'sheerun/vim-polyglot' + Plug 'nvie/vim-flake8' + Plug 'KKPMW/sacredforest-vim' + Plug 'wolf-dog/lightline-sceaduhelm.vim' + " Plug 'unblevable/quick-scope' + Plug 'tpope/vim-fugitive' + " Plug 'l04m33/vlime', {'rtp': 'vim/'} + " Plug 'kovisoft/paredit' + Plug 'sainnhe/vim-color-forest-night' + Plug 'justinmk/vim-sneak' + Plug 'axvr/zepl.vim' + " Plug 'kovisoft/slimv' + Plug 'tpope/vim-vinegar' + " Plug 'preservim/nerdtree' + Plug 'vimwiki/vimwiki' + Plug 'simnalamburt/vim-mundo' + Plug 'tpope/vim-dadbod' + Plug 'junegunn/gv.vim' + Plug 'rbong/vim-flog' + Plug 'tpope/vim-unimpaired' + Plug 'junegunn/goyo.vim' + " Clojure + Plug 'guns/vim-clojure-static' " syntax + Plug 'tpope/vim-fireplace' + Plug 'guns/vim-sexp' + Plug 'tpope/vim-sexp-mappings-for-regular-people' + Plug 'dylanaraps/wal.vim' + Plug 'alvan/vim-closetag' + Plug 'mattn/emmet-vim' + " Plug 'tpope/vim-salve' + Plug 'chrisbra/colorizer' + " Plug 'ycm-core/YouCompleteMe' + Plug 'vim-pandoc/vim-pandoc' + Plug 'vim-pandoc/vim-pandoc-syntax' + " cljfold + + " Todo: + call plug#end() + +"}}} + +" appearance {{{ + colorscheme zenburn + syntax on " Enable syntax + filetype plugin on + set encoding=utf-8 " Keep utf-8 encoding + set scrolloff=2 " Keep at least 3 lines above and below cursor + set showmode " Something something buffers + set showcmd " Show command in bottom bar + set wildmenu " Visual autocomplete for command menu + set wildmode=list:longest " Show all completions on tab + set laststatus=2 " Last window will always have statusline + set showmatch " Highlight matching [{()}] + set cursorline " Highlight current line + + " remove underline on current line number + hi CursorLineNr cterm=bold + + " Lightline + let g:lightline = { 'colorscheme': 'sceaduhelm' } + set fillchars+=vert:│ + + command! LightlineReload call LightlineReload() + + function! LightlineReload() + call lightline#init() + call lightline#colorscheme() + call lightline#update() + endfunction +" }}} + +" Movement {{{ + " TODO: map alt-j and k to move text lines vertically, maintaining indent +" }}} + +" Folding {{{ + set foldenable " Enable folding + set foldmethod=marker " Fold sections by marker + set foldlevel=0 " Fold by default + set modelines=1 " Check final line of file for modeline + +" }}} + +" behavior {{{ + set nocompatible " Turn off vi compatability nonsense + set hidden " Hide buffer when opening new file + set visualbell " Use visual bell instead of beeping + set ttyfast " Improves smoothness and drawing + set backspace=indent,eol,start " Always allow backspacing + set undofile " Make .un file for persistent undo + set relativenumber " Make numbers relative to current line + set lazyredraw " Redraw only when necessary + set updatetime=100 " Make updates happen faster (gitgutter) + set splitright " Make split to right by default + set splitbelow + set winheight=30 " Soft minimum window height (active) + "set winminheight=10 " Hard minimum window height (inactive) + set winwidth=85 " Window width for current window + set winminwidth=30 " Hard minimum for window width + set t_vb= " No visual bell ever + let g:sneak#use_ic_scs=1 + set virtualedit=block + let g:netrw_keepdir=0 " cwd follows netrw location +"}}} + +" searching {{{ + set gdefault " Remove default g flag on search + set ignorecase " Ignore case for searches + set smartcase " Case-specific only when uppercase + set hlsearch " Don't continue to highlight searched phrases. + set incsearch " But do search as characters are entered + " Remap tab to jump by brackets + " Nnoremap % + " Vnoremap % + " Remap tab to jump by window + +"}}} + +" tab settings {{{ + set tabstop=4 " Number of visual spaces per tab + set softtabstop=4 " Should always = tabstop + set shiftwidth=4 " Indent/outdent by 4 columns + set expandtab " Tabs are spaces + set shiftround " Always indent/outdent to the nearest tabstop + " Make search terms more visible + highlight Visual ctermbg=DarkGreen ctermfg=Black + set autoindent " Auto indentation + +"}}} + +" ruler settings {{{ + set rulerformat=%l,%-2v\|%4L\ Lines " Display line, column, and total lines + set ruler " Turn on ruler + +"}}} + +" long line handling {{{ + " set textwidth=79 + " set fo=t +" set colorcolumn=85 + +"}}} + +" leaders {{{ + :let mapleader = "," + + " Clear search highlighting with leader-space + nnoremap :noh + + " Underline with line of the same length + nnoremap - yypv$r- + + " Insert date on current line + nnoremap d k :r !date + + nnoremap k :vert new ~/.vim/bindings.md + tnoremap + +"}}} + +" invisible characters {{{ + set list + set listchars=tab:▸\ ,eol:¬ + +"}}} + +" hjkl {{{ + " Disable arrow keys in normal and visual mode + nnoremap + nnoremap + nnoremap + nnoremap + inoremap + inoremap + inoremap + inoremap + " Disable h and l + " nnoremap h + " nnoremap l + " Make j and k move by screen line, not file line + nnoremap j gj + nnoremap k gk + +"}}} + +" slimv{{{ + " let g:slimv_repl_split=2 + " let g:slimv_repl_split_size=10 + +"}}} + +" {{{ web dev + autocmd FileType html set softtabstop=2 + autocmd FileType html set ts=2 + autocmd FileType html set shiftwidth=2 + autocmd FileType css set softtabstop=2 + autocmd FileType css set ts=2 + autocmd FileType html set shiftwidth=2 + + " Emmet tab size + let g:user_emmet_settings = { + \ 'indentation' : ' ' + \} +" }}} + +" clojure {{{ + " TODO: make only work in clojure files + nnoremap e :Eval " eval form + nnoremap E :%Eval " eval file +" }}} + +" split pane navigation {{{ + " Map vertical split to \ w, switch to it, open explorer, prompt for filename + " TODO: make new window prompt use fzf + " nnoremap w vl:e open + " Switch panes wit ctrl + h/j/k/l + nnoremap h + nnoremap j + nnoremap k + nnoremap l + nnoremap :close + " TODO remap to something else + nnoremap :bn + " Term mode + tnoremap h + tnoremap j + tnoremap k + tnoremap l + tnoremap :close + tnoremap :bn + tnoremap + + " TODO: remap pane resize to something else (leader?) + " quick-scope + " Trigger a highlight in the appropriate direction when pressing these keys: + let g:qs_highlight_on_keys = ['f', 'F', 't', 'T'] + + augroup qs_colors + autocmd! + autocmd ColorScheme * highlight QuickScopePrimary guifg='#afff5f' gui=underline ctermfg=155 cterm=underline + autocmd ColorScheme * highlight QuickScopeSecondary guifg='#5fffff' gui=underline ctermfg=81 cterm=underline + augroup END + + nnoremap gt + +"}}} + +" file specific {{{ + " In markdown files, when writing add two spaces to each line to fix spacing + " In compiled version + " au BufWritePost *.md silent! %s/[^ ]\zs$/\1 / + " TODO: find a better solution + " Bold something in a markdown file + " :au FileType markdown nmap b i**ea**b + " Python + " au BufNewFile,BufRead *.py + "\ set tabstop=4 + "\ set softtabstop=4 + "\ set shiftwidth=4 + "\ set textwidth=79 + "\ set expandtab + "\ set autoindent + "\ set fileformat=unix + "" Webdev + " au BufNewFile,BufRead *.js, *.html, *.css + "\ set tabstop=2 + "\ set softtabstop=2 + "\ set shiftwidth=2 + +"}}} + +" plugin modification {{{ + " FZF + map :FZF + " This is the default extra key bindings + let g:fzf_action = { + \ 'ctrl-t': 'tab split', + \ 'ctrl-x': 'split', + \ 'ctrl-v': 'vsplit' } + + " Default fzf layout + " - down / up / left / right + let g:fzf_layout = { 'down': '~30%' } + + " Customize fzf colors to match your color scheme + let g:fzf_colors = + \ { 'fg': [ 'fg', 'Normal'], + \ 'bg': [ 'bg', 'Normal'], + \ 'hl': [ 'fg', 'Comment'], + \ 'fg+': [ 'fg', 'CursorLine', 'CursorColumn', 'Normal'], + \ 'bg+': [ 'bg', 'CursorLine', 'CursorColumn'], + \ 'hl+': [ 'fg', 'Statement'], + \ 'info': [ 'fg', 'PreProc'], + \ 'border': [ 'fg', 'Ignore'], + \ 'prompt': [ 'fg', 'Conditional'], + \ 'pointer': [ 'fg', 'Exception'], + \ 'marker': [ 'fg', 'Keyword'], + \ 'spinner': [ 'fg', 'Label'], + \ 'header': [ 'fg', 'Comment'] } + + " EasyAlign + "" Start interactive EasyAlign in visual mode (e.g. vipga) + xmap ga (EasyAlign) + " Start interactive EasyAlign for a motion/text object (e.g. gaip) + nmap ga (EasyAlign) + +"}}} + +" git commands {{{ + " Gitgutter hunk view + nmap ghv (GitGutterPreviewHunk) + nmap ghn (GitGutterNextHunk) + nmap ghp (GitGutterPrevHunk) + nmap ghf (GitGutterFold) + nmap ghs (GitGutterStageHunk) + " Controls fugitive diff split direction + set diffopt=vertical + command! Gundo !git reset --soft HEAD~1 +"}}} + +" fold search {{{ + +" command to fold everything except what you searched for + command! -nargs=* Fs + \ if != '' | + \ exe "normal /".."\" | + \ endif | + \ if @/ != '' | + \ setlocal + \ foldexpr=FoldRegex(v:lnum,@/,2) + \ foldmethod=expr + \ foldlevel=0 | + \ endif + + function! FoldRegex(lnum,pat,context) + " get start/end positions for context lines + let startline=a:lnum-a:context + while startline < 1 + let startline+=1 + endwhile + let endline=a:lnum+a:context + while endline > line('$') + let endline-=1 + endwhile + + let returnval = 2 + + let pos=getpos('.') + + " search from current line to get matches ON the line + call cursor(a:lnum, 1) + let matchline=search(a:pat,'cW',endline) + if matchline==a:lnum + let returnval = 0 + elseif matchline > 0 + " if current line didn't match, there could have been a match within + " trailing context lines + let returnval = 1 + else + " if no match at current line, search leading context lines for a match + call cursor(startline, 1) + let matchline=search(a:pat,'cW',a:lnum) + if matchline > 0 + let returnval = 1 + endif + endif + + call setpos('.',pos) + + return returnval + endfun + +" }}} + +" copy matches {{{ + +function! CopyMatches(reg) + let hits = [] + %s//\=len(add(hits, submatch(0))) ? submatch(0) : ''/gne + let reg = empty(a:reg) ? '+' : a:reg + execute 'let @'.reg.' = join(hits, "\n") . "\n"' +endfunction +command! -register CopyMatches call CopyMatches() + +" }}} + +" gvim {{{ + set guioptions=Ace + set guifont=Consolas:h11 + " set guifont=Bitstream\ Vera\ Sans\ Mono + set guioptions-=e + set pythondll=python27.dll +"}}} + +" zepl {{{ + augroup zepl + autocmd! + autocmd FileType python let b:repl_config = { 'cmd': 'python3' } + autocmd FileType javascript let b:repl_config = { 'cmd': 'python3' } + autocmd FileType clojure let b:repl_config = { 'cmd': 'clj' } + autocmd FileType scheme let b:repl_config = { 'cmd': 'rlwrap csi' } + autocmd FileType lisp let b:repl_config = { 'cmd': 'sbcl' } + autocmd FileType julia let b:repl_config = { 'cmd': 'julia' } + " autocmd FileType cs let b:repl_config = { 'cmd': '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat"' } + autocmd FileType cs let b:repl_config = { 'cmd': 'cmd' } + augroup END +"}}} + +" TODO: rebind c-n +" TODO: change ,k to ,n and add notes to version control + +" folding options, this must be last in file +" vim:foldmethod=marker:foldlevel=0 + + diff --git a/windows/autohotkey/AHK_Scripts.ahk b/windows/autohotkey/AHK_Scripts.ahk new file mode 100644 index 0000000..9db8d29 --- /dev/null +++ b/windows/autohotkey/AHK_Scripts.ahk @@ -0,0 +1,110 @@ +; vim.exe should be in the %path% variable or in the same directory as vimedit.exe + +#SingleInstance force + +Hotkey, XButton1 & v, EditSelect +Hotkey, XButton1 & s, EditSelectSql +Hotkey, XButton1 & p, EditSelectPython +Hotkey, XButton1 & z, EditSelectTest + +EditSelect: + winId := WinExist("A") + Clipboard = + Send ^{ins} + ; If no text is selected then select the current line + if Clipboard = + { + Send {home} + Send +{end} + Send ^{ins} + } + ; if this isn't in home folder I get permissions issues + fileName := "c:\users\ikeane\es" . A_YYYY . A_MM . A_DD . A_Hour . A_Min . A_Sec . A_MSec + FileDelete, %fileName% + FileAppend, %Clipboard%, %fileName% + ; noudf turns off undofiles + runwait, "c:\Program Files (x86)\Vim\vim82\gvim.exe" -c "set noudf" %fileName%, c:\ + FileRead, contents, %fileName% + StringRight, ending, contents, 2 + if ending = `r`n + StringTrimRight, contents, contents, 2 ; remove last crlf from clipboard + Clipboard := contents + WinActivate ahk_id %winId% + Send +{ins} + contents = + FileDelete, %fileName% +return + +EditSelectTest: + winId := WinExist("A") + Send ^{ins} + fileName := "c:\users\ikeane\es" . A_YYYY . A_MM . A_DD . A_Hour . A_Min . A_Sec . A_MSec + FileDelete, %fileName% + FileAppend, %Clipboard%, %fileName% + runwait, "c:\Program Files (x86)\Vim\vim82\gvim.exe" -c "set noudf" %fileName%, c:\ + FileRead, contents, %fileName% + StringRight, ending, contents, 2 + if ending = `r`n + StringTrimRight, contents, contents, 2 ; remove last crlf from clipboard + Clipboard := contents + WinActivate ahk_id %winId% + Send +{ins} + contents = + FileDelete, %fileName% +return + +EditSelectSql: + winId := WinExist("A") + Clipboard = + Send ^{ins} + ; If no text is selected then select the current line + if Clipboard = + { + Send {home} + Send +{end} + Send ^{ins} + } + ; if this isn't in home folder I get permissions issues + fileName := "c:\users\ikeane\es" . A_YYYY . A_MM . A_DD . A_Hour . A_Min . A_Sec . A_MSec + FileDelete, %fileName% + FileAppend, %Clipboard%, %fileName% + ; noudf turns off undofiles + runwait, "c:\Program Files (x86)\Vim\vim82\gvim.exe" -c "set noudf syntax=sql" %fileName%, c:\ + FileRead, contents, %fileName% + StringRight, ending, contents, 2 + if ending = `r`n + StringTrimRight, contents, contents, 2 ; remove last crlf from clipboard + Clipboard := contents + WinActivate ahk_id %winId% + Send +{ins} + contents = + FileDelete, %fileName% +return + +EditSelectPython: + winId := WinExist("A") + Clipboard = + Send ^{ins} + ; If no text is selected then select the current line + if Clipboard = + { + Send {home} + Send +{end} + Send ^{ins} + } + ; if this isn't in home folder I get permissions issues + fileName := "c:\users\ikeane\es" . A_YYYY . A_MM . A_DD . A_Hour . A_Min . A_Sec . A_MSec + FileDelete, %fileName% + FileAppend, %Clipboard%, %fileName% + ; noudf turns off undofiles + runwait, "c:\Program Files (x86)\Vim\vim82\gvim.exe" -c "set noudf syntax=Python" %fileName%, c:\ + FileRead, contents, %fileName% + StringRight, ending, contents, 2 + if ending = `r`n + StringTrimRight, contents, contents, 2 ; remove last crlf from clipboard + Clipboard := contents + WinActivate ahk_id %winId% + Send +{ins} + contents = + FileDelete, %fileName% +return