tocco-admin 1.0.7 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/changelog.md +10 -0
- package/dist/010d0560a00a032c33da819e3c86596a.js +1 -368
- package/dist/029ed9161a8d24a9c2ba97124020989d.js +1 -9
- package/dist/02d5c4961ca855a88b1cd3e1b7fa7aa2.js +1 -113
- package/dist/03371bf1d5cbb1eab58e3a0130d1e9c2.js +1 -15001
- package/dist/03487ba89c7b63069d63c1b3802a472c.js +1 -24
- package/dist/03748243ac7148ca150ba06c2919ff81.js +1 -271
- package/dist/03980cb12dacd26148c22bb61fce440f.js +1 -9
- package/dist/03aae8272914723a7bf85b984385032c.js +1 -9
- package/dist/04770a551c5b6daa744be9b180a8d0fe.js +1 -13311
- package/dist/06d958315fc6cdbb28576b03e43203aa.js +1 -9
- package/dist/07101530302fe1d03dcd731992f7a899.js +1 -869
- package/dist/0731d7568a06d2e28351781370bc52bb.js +1 -445
- package/dist/0794fa2b9c882c72fa7d586069b61055.js +1 -3608
- package/dist/0872e65446d05c1c443180c6280b015f.js +1 -214
- package/dist/08b9f3e305b5e3e0b81f7848fa7f3b6b.js +1 -105
- package/dist/09563004132aabcfcc186943555a92a1.js +1 -263
- package/dist/0a1d9862d917663419ac2dd2e8193267.js +1 -9
- package/dist/0a858573915ab9b03fe79f98f8c51a04.js +1 -271
- package/dist/0a9cd3d62e7f1cd404606c50d9da86fb.js +1 -229
- package/dist/0beea7b55cf3b8c9f9b0bd46170bb30e.js +1 -238
- package/dist/0ec4bf56a876c2bf34ea174c584ce628.js +1 -97
- package/dist/0f418117fac55a859631143ad7d0e833.js +1 -1038
- package/dist/10132993df2cf9c9423b53a8a44379ab.js +1 -9
- package/dist/1034e3807d1bcf55cb564491950237ab.js +1 -9
- package/dist/104959bdb953a3792a203e98d2bf530f.js +1 -895
- package/dist/114c58e47951fe3f6d25f683e0cd54e7.js +1 -381
- package/dist/11b2d52156942feeb87b7c608276c49b.js +1 -119
- package/dist/11dc77ef2ea3a04834945a52f7de2072.js +1 -3208
- package/dist/12b520593765ef7e714d7fb3764633ed.js +1 -167
- package/dist/130340e2c62b9e858f186dab5f491e55.js +1 -9
- package/dist/1324f89bd8db0bae85b79b7f90f6c119.js +1 -418
- package/dist/13eda3507db9cbfb400f46b9b3ff6553.js +1 -9
- package/dist/1441681e52f3ae9ab33afbc5517359a0.js +1 -45
- package/dist/1533058f0ce13acdaa8d5bdc7d147bef.js +1 -9
- package/dist/1549fe09fd6b44aca96e2b1b7cbd93d0.js +1 -111
- package/dist/15f3800d33b854ba476c9daf1b9e0326.js +1 -9
- package/dist/16563bfaf4741097d38cc6ce3ccc1a2d.js +1 -2644
- package/dist/170487867de05784a96608617bdd544d.js +1 -9
- package/dist/179a93d3148b7edb72581279c3787d0c.js +1 -353
- package/dist/17dc98279d24649d3ca77cbce8c44e83.js +1 -9
- package/dist/1850762f1bfaf1a1044765b02b243ed4.js +1 -262
- package/dist/18cfa6de2de3832aa10439fbf963217a.js +1 -3035
- package/dist/18e63e724098792b95b076412a860636.js +1 -116
- package/dist/191feb6103c36b202bc01ba262916cdf.js +1 -9
- package/dist/19e684db1b08c82963634abc8b2c989f.js +1 -422
- package/dist/1abc9efccf77fd4527d1c2fc85d87e04.js +1 -647
- package/dist/1b15b9f88acaf59b96e59c6b5f32da12.js +1 -9
- package/dist/1b64f97eed4a3837a93f8bdd363295fb.js +1 -1873
- package/dist/1c02ec6ec024eee3ebb6b34fa8ff316f.js +1 -103
- package/dist/1c57b3481f295105588972ffa1305521.js +1 -9
- package/dist/1cc82820c232a82b5d8b6cb9e4152af3.js +1 -514
- package/dist/1cd3d09b5303cc37fa337225ed6a9132.js +1 -137
- package/dist/1e029a7f1f64457da4f54254d50ac59b.js +1 -95
- package/dist/1e26167b5f75d5b94add34f1f4d8b044.js +1 -380
- package/dist/1e4131e1241a5b81d54c7d9cb66b0e87.js +1 -254
- package/dist/1fe2d583da5f073431d81a6ea13ffc0c.js +1 -275
- package/dist/1fee62e3e043728a265935971fa26200.js +1 -981
- package/dist/211511e7b374f57ad31acaf49dbdccb1.js +1 -9
- package/dist/2183252fe9e1b88fcf2bc454d6fd9273.js +1 -115
- package/dist/222d52530e9db0a0ec565c6306c5db35.js +1 -104
- package/dist/2267d20fd89c81a461e38abecdb8fcdc.js +1 -282
- package/dist/2272c6632c52c3e402ab27b8045ab8f1.js +1 -9
- package/dist/23bb1a9f279e7a732bfd405350aab114.js +1 -9
- package/dist/23da8ba64540ff4aa68a34d3445db680.js +1 -232
- package/dist/243c0c0572ab9866e02e18821558a1c5.js +1 -89
- package/dist/244b1a234ec1728d0268214de601449d.js +1 -343
- package/dist/24a3ff38afde257888d755ece9bfd704.js +1 -9
- package/dist/25718a469574ade47e23567d8c543169.js +1 -9
- package/dist/25c99a71d30112583893bc5277402c46.js +1 -329
- package/dist/25eda4bb98e40a82cfd5b4bf9fbc06ec.js +1 -9
- package/dist/263f7107e9357b1c91997e1a21b59ff5.js +1 -2025
- package/dist/26fb247a2e0630e1f435cb4d91ec51fd.js +1 -397
- package/dist/27730a0bdc6f430cc85049a46a73a029.js +1 -9
- package/dist/27ccb71fa24357a0919a861351d5b82d.js +1 -2806
- package/dist/28474eb7ee45a125e49cc5cbe69e336f.js +1 -1193
- package/dist/28785bea435918d49b290d27bf660baa.js +1 -9
- package/dist/28acb3b48578dfd30dd555fff7c822f7.js +1 -312
- package/dist/291611f874a2bc54dbc291b52d74c512.js +1 -501
- package/dist/2b2fe1a34cdf81c656a47e493ca9d658.js +1 -257
- package/dist/2bcf741e1f2cb07989a722a6ba9c2ea7.js +1 -128
- package/dist/2d2a42eeeeec801ab35f2fff7d900e43.js +1 -330
- package/dist/2dd82c65030101b60dffccedd8741c6e.js +1 -9
- package/dist/2ddd0346681f9f12fd3a191245aa41df.js +1 -797
- package/dist/2f055ac4066041b9008dd6aebf9df34b.js +1 -9
- package/dist/2f5be3e3e9ab852d217168220854ea9b.js +1 -102
- package/dist/2f7c864f08b00c01f04ac22375f7ddd9.js +1 -520
- package/dist/2fc0239242a898632ca8aa451cb930c2.js +1 -9
- package/dist/2ff54aa3c655216f360438bc7f5b181a.js +1 -2742
- package/dist/30e80558090a09477e4466af8af4c40e.js +1 -135
- package/dist/34791bf31a4236531bc887b48f872c1c.js +1 -1090
- package/dist/34b3249d58303435b894a43d3776a5c3.js +1 -1433
- package/dist/3567d1ea443427e944a6f189a0898819.js +1 -9
- package/dist/3646668820dc96864fbed7746f805947.js +1 -452
- package/dist/36474100e81ab63c4ddbc94ab2cc8667.js +1 -799
- package/dist/365b89ceec577ebec0a39c938c2363f0.js +1 -263
- package/dist/367ad31e6d99d0021d05133b85bb9faf.js +1 -93
- package/dist/37172facd8a534a38f378ca2a9c7c11b.js +1 -9
- package/dist/37afa466cdb7fa8fc2e043164d48f29e.js +1 -13110
- package/dist/37ee3b5201ae2e2dc5dc8b1b20ad900e.js +1 -9
- package/dist/38270ad5088729f40c461c4a5a6bad5d.js +1 -248
- package/dist/3b190e5159c72fb7e27271956772bcba.js +1 -9
- package/dist/3b544bb2c5a4e7b225a4b50235a0fd6d.js +1 -9
- package/dist/3b6e7dc98c47eeafd851ca5072db4be6.js +1 -9
- package/dist/3bbf0faa999b08584dc971eab820113a.js +1 -1169
- package/dist/3c5b59a666c5d39d9ba9cc054d36a410.js +1 -9
- package/dist/3c71a5c0e85afc5486ee9ac29099843d.js +1 -230
- package/dist/3dcc18a5dee46b57ad7f85c0bee86802.js +1 -508
- package/dist/3df92508d7112d83474f31fe9590e289.js +1 -1015
- package/dist/3e277a4ce5486a806a00497aea8ecdd3.js +1 -502
- package/dist/3e3e2243675fa4fb4b320dc57daf2d4f.js +1 -346
- package/dist/3f55ba1c6515db2f98bb996c1a5bc9e3.js +1 -76
- package/dist/3f758ea78954547fed0a8d999691dd7c.js +1 -292
- package/dist/406884d5525e864955e9f5058526aa02.js +1 -101
- package/dist/40dc555a17f1c85020333a41f01dd9ba.js +1 -106
- package/dist/40e6f6cb52a24a747b1046614db3b164.js +1 -213
- package/dist/41d8a58fd52b6a06e8d3fb06cdabf67a.js +1 -989
- package/dist/42b4ce6de00994aa6bf7db7ff2f931a8.js +1 -1331
- package/dist/43a0e099f8283dc1c1c6bbd39148d98d.js +1 -867
- package/dist/440f4d477b586c7a6ba4c1c966ca79fc.js +1 -147
- package/dist/444ababf8edc26948943fbb45bd06a19.js +1 -259
- package/dist/44701e25bb6f2ab9ff18343f2357d1b0.js +1 -171
- package/dist/44ac2a2398075299754707d4bac7c276.js +1 -59
- package/dist/460c67d8fe31ef229704bd5ab6d1dd26.js +1 -942
- package/dist/4639c30a609d986a255ccc684404527e.js +1 -676
- package/dist/4700af84801dbda8a3880e3469c21130.js +1 -413
- package/dist/4736a562251eeaea46dd06892b489f35.js +1 -46
- package/dist/47541c23870e955fff15de4be490ba74.js +1 -112
- package/dist/47f0fbf038314894ac52f2d67466b5e9.js +1 -2848
- package/dist/4860a6a7c59b9ed5c779f7201dc1f591.js +1 -349
- package/dist/48e9351c5623d4da657ce7d5d0267ea6.js +1 -9
- package/dist/4a1dab236c2844d28f73c5c128afe299.js +1 -193
- package/dist/4b425eb8188febc5a89674b89a72d296.js +1 -798
- package/dist/4b61fe945e9e73aba22717e5d6f080df.js +1 -642
- package/dist/4bf3bc1fbdd26ac698fef1bdf26e3ff4.js +1 -9
- package/dist/4c2816c26725f7aae5b490142e31112f.js +1 -352
- package/dist/4ceabd28d8dc751f41002ebf2b6fed88.js +1 -539
- package/dist/4d143a2d103a9e376a9e3b55e680eef7.js +1 -310
- package/dist/4d8cb7033879cb7fcc7a43798e2bde22.js +1 -9
- package/dist/4e389cce6fb8f78845fab249bce43c0b.js +1 -9
- package/dist/4eed3725a00fc2bab78accdb014b7826.js +1 -325
- package/dist/4ef80ee74467e0297eec3cc03092da01.js +1 -9
- package/dist/506d44d8712a22011ce2bec8adbb19b2.js +1 -210
- package/dist/50c073327491a2ed3bfa2ebb466c4204.js +1 -25
- package/dist/51f903c5ce5284a63196247cffb5ca40.js +1 -9
- package/dist/5352ecd8e5f1a2637b48e18cc406edb1.js +1 -9
- package/dist/53e3600928916423671f3388e2d67844.js +1 -9
- package/dist/54b3396acd2c700969248de4b20cbf7c.js +1 -109
- package/dist/55892adefebc0d53993fb108151ed150.js +1 -207
- package/dist/57f4109bd1f06be4dc2bcb8ff7eaf1e5.js +1 -9
- package/dist/57f9654d8ecdebfb02c636e1889af2e4.js +1 -2698
- package/dist/582e24f5ba929e358fadfc7be4c18025.js +1 -9
- package/dist/58598705e7012f4ca1eb1dd21d3c59a5.js +1 -9
- package/dist/5861dfe4f2c7823623e82d0619c5bf06.js +1 -9
- package/dist/58aab872dbdb5e1607076e1935130e03.js +1 -9
- package/dist/595aef8d8b0a2017e2fc27db5703e0d1.js +1 -167
- package/dist/59cc05504a1c823b6d4796bf6b430822.js +1 -9
- package/dist/5a496ae20cc576bef1d35972548207cf.js +1 -9
- package/dist/5a67fdd5293af0a35defd2574c05cd04.js +1 -1803
- package/dist/5ada4185d70a1852b578b2063de58e37.js +1 -221
- package/dist/5b6a626249d0bc43e412fffa6a9ee177.js +1 -9
- package/dist/5bad2df0e3bfd8fdc1a332fb6276cb39.js +1 -360
- package/dist/5c53d90bf4029cfd1b6a0945d1cae142.js +1 -3550
- package/dist/5c96efcfd419a70a93c96557979bc66d.js +1 -371
- package/dist/5d3314103b00c8ea165c6f9f6757f794.js +1 -9
- package/dist/5d46734b57c7408a41473abcd515b64c.js +1 -387
- package/dist/5da9145440d57c9b84d469253e84898d.js +1 -154
- package/dist/5e37c1ef17a219449c8c6aa37a87a941.js +1 -101
- package/dist/5e3f006db26e9b277b1bdbc130611a14.js +1 -400
- package/dist/5e55b301888460bd06c8e26d1011e01a.js +1 -9
- package/dist/5e6c2744429a8fac6e536b179c1f31d0.js +1 -293
- package/dist/5ebdef8c548fca6c51280e915d6f4c3f.js +1 -168
- package/dist/5ede1aebde9d4e5f5cce2db3044495c7.js +1 -148
- package/dist/5f3ce6efab3c679ec1ad25ab0b3f6b2f.js +1 -9
- package/dist/5fb6059ab5d7abab7a74eb73028a3aeb.js +1 -361
- package/dist/5fc5c77d4df4f5d77f8530f6b23ecd1e.js +1 -135
- package/dist/5fedbf948ed123687f77167fac1faf8b.js +1 -9
- package/dist/60340be8eea1d704a17f399b3c3f9577.js +1 -200
- package/dist/621b99ed1a029c36b4e91ec35f36c344.js +1 -44
- package/dist/6292be0125d3720498496eaa7f541618.js +1 -56
- package/dist/63b15fb6fc8f897b22a4bf72b7e8452a.js +1 -57668
- package/dist/64a5f4d62507d032038dcd76d15188e1.js +1 -9
- package/dist/64c45b6610e353ba59a58afc6dd090ca.js +1 -450
- package/dist/64d6924350bd7706850cdc0dcc76ccf6.js +1 -9
- package/dist/6511453710d760c2682567b40ddb3301.js +1 -593
- package/dist/656f53e1b4c6e37a31799737faf6d639.js +1 -209
- package/dist/663234c150f2097f3812c6065491497c.js +1 -254
- package/dist/6903d8ef977a1424c4e2eb22b96feb77.js +1 -118
- package/dist/6a7bf4fb4484f6f48d8e4337f126a61d.js +1 -1246
- package/dist/6abb884bd4f1a54529c00b58c14741cc.js +1 -128
- package/dist/6bb61adbbc13088ee1c32d88b5c7e754.js +1 -1743
- package/dist/6c0a75dc5671c3f237a79f6e45b9891c.js +1 -9
- package/dist/6c67587c2093ac3a19da9f2196e040b7.js +1 -9
- package/dist/6d38cef4a006e6cfe54a6117aba7b600.js +1 -9
- package/dist/6f09754fd684f82e6c06ae526d15ac80.js +1 -740
- package/dist/6f64da239140d00b81d8b6c523e86daf.js +1 -116
- package/dist/6faa9e5f2a0122d2333fa450337a09b0.js +1 -9
- package/dist/6fd6a6ddbcbbebe735c9d21e594203ec.js +1 -145
- package/dist/6fe3f0823e345813c2084b243cb6650b.js +1 -6198
- package/dist/70074e0c785c9a808dea76c7c7d17af3.js +1 -9
- package/dist/70286c33cab463fd576766adecd2d5d9.js +1 -9
- package/dist/707fa1de4d2096da1951c4bc9d21cb6d.js +1 -75
- package/dist/7080d2a1db1608264a6d9d9fbaf2cce8.js +1 -9
- package/dist/716879b6ef8945d579595d88534ae402.js +1 -417
- package/dist/725da29f1643c2263a437c08a1454aea.js +1 -9
- package/dist/73c78b067c792ea8c737746e4671d3e0.js +1 -120
- package/dist/740f4264cd757fcf28331fd30daf295e.js +1 -18
- package/dist/7493f0c3c9bf268d6ad785019d993dd7.js +1 -150
- package/dist/74fa46809aba9625071aa51bc0a71561.js +1 -122
- package/dist/755114145e5b97e5571a160a39e716db.js +1 -9
- package/dist/75bffda9455d77087f34708ac4e85371.js +1 -2640
- package/dist/75d2dae20d7bac5ecfa9dafc48ec04eb.js +1 -277
- package/dist/760eb6458a048f3cba7bc3ae52ef2ba4.js +1 -137
- package/dist/7735af777659608bcd8cd6525e3bbe58.js +1 -135
- package/dist/77aaca51c1c32acaf32656d45f4dc017.js +1 -9
- package/dist/77dd68f6396b8ab4ce2c238d6ddb5354.js +1 -331
- package/dist/788819e459cdd8c4c1ef565fd303f519.js +1 -113
- package/dist/7a9a1dced0e327dc9cb1728bef25641d.js +1 -114
- package/dist/7bd84be066027e61c84c9c2aa9543c2a.js +1 -888
- package/dist/7c1cd1223bd45600763f8c152ad167d5.js +1 -873
- package/dist/7c27341a2599ffb713c8fb7beced7601.js +1 -306
- package/dist/7c317e61789b17749dfe6ea294c89b6b.js +1 -193
- package/dist/7c9c55eb1a1e5c1dfd63631511d9a1f0.js +1 -720
- package/dist/7dead8e2fcacc316bbfa632cd9f1c9bb.js +1 -163
- package/dist/7e4099fc2d04c7c1cf96892b962ba4ec.js +1 -9
- package/dist/7ef082035f74b3d7324f95a7498ea656.js +1 -2632
- package/dist/7f12d133c88ce53d0837a6c4c0287a37.js +1 -360
- package/dist/7f407a1006eb830d6f0aaad96c133d26.js +1 -430
- package/dist/805cb6232d7a9fa46025d48a43622ecf.js +1 -9
- package/dist/80a171b7595d1161735e23dec8efddd6.js +1 -363
- package/dist/82fed7ec74be91e0db61c500d9c6d7ee.js +1 -303
- package/dist/83387cb17a7680f59240e7b399e3ac2b.js +1 -9
- package/dist/8361542d34c46713c9aff6c4ce65a9a3.js +1 -2693
- package/dist/85a977f41a907dba8c672f9bf4943da0.js +1 -3028
- package/dist/866bf6ca5057dcb24503761af061d486.js +1 -478
- package/dist/870184211838006214be1c23c98672fc.js +1 -17
- package/dist/8707a7b49421dbbb842506674ff87fa3.js +1 -59
- package/dist/875e553a27bee88a73df34a90b3058e4.js +1 -2564
- package/dist/8772719d0f76ecabded160e32dc5eb77.js +1 -503
- package/dist/87932c8321c9985ed3b6979e86d2a50e.js +1 -96
- package/dist/87d6bf8becf2d5ebe2f71fda95a313ea.js +1 -83
- package/dist/88bbfb9fdb8730ffc23f546b42d8d620.js +1 -395
- package/dist/88e2feda80ac8cfb28f1dc0ec833b40d.js +1 -9
- package/dist/894720f1519e5eb34e1b4f33fca7a9dd.js +1 -185
- package/dist/894edcaf39c3c95818e3949d737ed459.js +1 -9
- package/dist/89d3c35a5ef97a600927b477a9ba06b4.js +1 -414
- package/dist/8ba6618773c9d8d0b4f6ecb785651e2c.js +1 -121
- package/dist/8bf75743fb14fea7cf02a5da1bda79d4.js +1 -73
- package/dist/8cb83aa3fea85e950c29450b8237fb72.js +1 -14
- package/dist/8d9bb1799d9b98db107e84f10132e17f.js +1 -9
- package/dist/8ed58ed9c7e1cb1ae1f2830d29011ffb.js +1 -9
- package/dist/909adc4a16e0f97d869e3dd16d561430.js +1 -122
- package/dist/90bafd962205e96c3285d27cbf95c55c.js +1 -68
- package/dist/91bd2b106800bd7812e2ab5a5fea985b.js +1 -110
- package/dist/92f4aab5c66f6269c7054c8fbcb3de13.js +1 -9
- package/dist/957970f69802c38a9092b9b6264cc1b9.js +1 -112
- package/dist/9600fed6a4508afbbcd2c75923d953c3.js +1 -125
- package/dist/962969a46fefcace3305abd4d6e14a2e.js +1 -9
- package/dist/964646d64dd3196a9c27fe302511414a.js +1 -10922
- package/dist/9671c350e11f1569edb5066cbfeb3334.js +1 -98
- package/dist/9696a4229fb787eeb25b26f1274b75ee.js +1 -9
- package/dist/97e72973d750ecb3bc2e75b75bf63c5b.js +1 -9000
- package/dist/9807cf1e443a7440371904b6525f37eb.js +1 -9
- package/dist/985d6749688c18f94994794f88492444.js +1 -278
- package/dist/99ade8b6895e3a1c3d6eb70583cb924e.js +1 -115
- package/dist/9b1fd9cf4206cc32e84150c49707d811.js +1 -9
- package/dist/9b8e2282f60f104ff3ace5b905af4d62.js +1 -64
- package/dist/9ff6d4a6592c0cb7d0b939113c3a6b31.js +1 -95
- package/dist/a164d0e40c4dfa485dcf8e6d5258d767.js +1 -122
- package/dist/a1c8660c5bcc6b6a43a7fb3c351174d9.js +1 -9
- package/dist/a2a705f6bc3a6827d6c94c5978aec36d.js +1 -243
- package/dist/a2c0fcb443c396b30a11fc1682a29c13.js +1 -115
- package/dist/a4306aa43824ec1a4ee422b59a851e6f.js +1 -2622
- package/dist/a4bedde07e392f8ebf64341b61f75df2.js +1 -9
- package/dist/a533e643002830be2da76c9527265860.js +1 -9
- package/dist/a5d364d12a8f7691339c497b2e725bcf.js +1 -145
- package/dist/a7824ec1ab22aeb22bb35ab8bf1ddc4a.js +1 -715
- package/dist/a934b622dd8bdcdcdc1dde985a07ac14.js +1 -36
- package/dist/a98ead014d010899b35ee25c7c225542.js +1 -411
- package/dist/aa0eee504d52a12d3a30bbd523afcc34.js +1 -9
- package/dist/aa5623ec68d23fedb9c9c115c7d99063.js +1 -9
- package/dist/aaddd877950d1e3bf1b3ef0fc0ff596e.js +1 -449
- package/dist/aaf5c3a4f1a188fd051577cea7b87209.js +1 -457
- package/dist/ab4b314445b23359319c14cce9a0e321.js +1 -3687
- package/dist/abb40a9a6ef0b2fe14c66dcadc9857a2.js +1 -248
- package/dist/ad215d7ba317c941cdcc96ae78e86666.js +1 -67
- package/dist/adc5e81257ed3f8d70d03cf79150eec1.js +1 -320
- package/dist/aedbf3a3ece39aab8c9f3b3a3779e79b.js +1 -115
- package/dist/af959c2a870f08dd8abccae97c9b9bae.js +1 -35
- package/dist/b0071564b0854c39e3de8b99d66e4dfd.js +1 -298
- package/dist/b02d982ccb1011197a5a24800b178a0a.js +1 -9
- package/dist/b0803f33b602bd3b26be70f259e38cee.js +1 -102
- package/dist/b1170472ae4b50e3b0070eb991e502fe.js +1 -9
- package/dist/b1ac30076824f72cdff7ea29ae0b6801.js +1 -489
- package/dist/b1f3f77a9279cdb38846ebe13c3438bc.js +1 -9
- package/dist/b20056c149af6b50c851ecfff90e0ccb.js +1 -2792
- package/dist/b20cd9acf45420fcacfd923754185663.js +1 -9
- package/dist/b25188cf2652d63136d5e54c38abf84e.js +1 -500
- package/dist/b2742fab9568b63c2274698af5d381fc.js +1 -135
- package/dist/b2ff96fbe6501ff45c37491b94c96c5f.js +1 -315
- package/dist/b33ef9b4202539d3690251cb8213a034.js +1 -9
- package/dist/b3bb2c8deddd8c2afcf73f6f5d711596.js +1 -61
- package/dist/b402b938ca2da72e0984a1360eda5897.js +1 -40
- package/dist/b460e24d77f9c0d8b21e65d899840adb.js +1 -363
- package/dist/b6a6a4adaab4f09a7835ff64a5096198.js +1 -80
- package/dist/b6df2278bd475169749bab512944b7ec.js +1 -207
- package/dist/b7b7be8216519adf62d75f123f9c6423.js +1 -1470
- package/dist/b808fb222140a85b23ebbe0fffa906d9.js +1 -9
- package/dist/b8197742452dd2e77090dde34cb2dc4d.js +1 -4105
- package/dist/b881dca9d9a80f61d87374b4bd5a2dd5.js +1 -9
- package/dist/b98206b2175363f1150c074608603942.js +1 -592
- package/dist/ba6b8b3e06cd9d0aee9c69278ee84647.js +1 -9
- package/dist/baa5bf4cfefed057a4657a1b02cfa114.js +1 -32
- package/dist/bb4d542cb170b3f7b27a42c69262975b.js +1 -1421
- package/dist/bb5bab7a675544fe31ddb7f4a77dffb9.js +1 -9
- package/dist/bc0551f89df16ee262a67c0431544a9e.js +1 -128
- package/dist/c0736a7477d7aac4c669bb94ccae25d9.js +1 -381
- package/dist/c0780e66c6b1ade0fa22283ce1f9c402.js +1 -1582
- package/dist/c1bc72d79cc6161590fc01c6b139fccd.js +1 -296
- package/dist/c32ec7d45ccd947b98fe458a8ca1405b.js +1 -412
- package/dist/c40023acde0f3d5f4806f5fccbb4284b.js +1 -160
- package/dist/c45445ab45defa960329c6f8e6224e57.js +1 -317
- package/dist/c51840077c684be0e7e13339f85cd4a9.js +1 -9
- package/dist/c530988d2b1966fd10a4d99fa3877e1b.js +1 -9
- package/dist/c631c95d9019218dfd22d028f215e1d1.js +1 -312
- package/dist/c728b4ef87cfd5f561d1601f0867c39d.js +1 -2509
- package/dist/c733414555a126e689832ffb55cc203f.js +1 -820
- package/dist/c797511423f91a877e7fdffa74d015cb.js +1 -914
- package/dist/c7ca9dccbac3af7ebc82b271dd2aa570.js +1 -400
- package/dist/c80e89199aef31e48addb2b35ea96365.js +1 -9
- package/dist/cb4175466ea600940f2927fa03a217e8.js +1 -472
- package/dist/cb652f200fc3dd740b2e7f678a9272ea.js +1 -9
- package/dist/cbdbd623038183a8c068dd24ecd90682.js +1 -9
- package/dist/cbdc4ca43a8c940a6c3f59a8b6f17df5.js +1 -9
- package/dist/ccde58de5468dd353dbee74d631ebdf0.js +1 -34
- package/dist/cd358d9acaaa7049d85b15ac766fc314.js +1 -311
- package/dist/cd9a17f94a922c7c88000b1b3cdd67df.js +1 -9
- package/dist/cda6c5c52fa5d595982da0fac9da25a5.js +1 -984
- package/dist/cf188b3f83735389d47bb12fc9f7069a.js +1 -9
- package/dist/cf3f6b1c74c72cb5d02870022dbc9f94.js +1 -9
- package/dist/cf90a39d245bf7e6c1b41c7a9a28f0a1.js +1 -681
- package/dist/chunk-207.cc1646ee6c7a19f6220b.js +2 -0
- package/dist/chunk-207.cc1646ee6c7a19f6220b.js.map +1 -0
- package/dist/chunk-404.e573ba4c4c7cedc843f3.js +2 -0
- package/dist/chunk-404.e573ba4c4c7cedc843f3.js.map +1 -0
- package/dist/chunk-actions.c7efc5f5036d72d3b972.js +2 -0
- package/dist/chunk-actions.c7efc5f5036d72d3b972.js.map +1 -0
- package/dist/chunk-code-editor.4932fdbfef27989069a5.js +2 -0
- package/dist/chunk-code-editor.4932fdbfef27989069a5.js.map +1 -0
- package/dist/{chunk-docs-actions.8a808416a2d69710472e.js → chunk-docs-actions.fe615fd8e3c8ff68c449.js} +2 -2
- package/dist/chunk-docs-actions.fe615fd8e3c8ff68c449.js.map +1 -0
- package/dist/chunk-vendor-icons.aae1dc235d12dd74b38e.js +1 -0
- package/dist/d04707d65591e86810ebc56d48b10810.js +1 -296
- package/dist/d1a58542777d072396d7cee5487304f9.js +1 -141
- package/dist/d1efdca26800423a363b769b1834cfcf.js +1 -223
- package/dist/d2a00e1726c71ca10fbaf4b9c4374458.js +1 -1003
- package/dist/d2fe7592ff2fdda099b2b6355abe8c06.js +1 -5240
- package/dist/d30fa4070abd6929228505790744e180.js +1 -279
- package/dist/d43ad5f9bad9a042b49b2592c7639c28.js +1 -9
- package/dist/d542dda7308361c34af2afb9b70d755a.js +1 -9
- package/dist/d5a6140d581e5c4eb200259ce372f40b.js +1 -9
- package/dist/d5f79987405c2169278f8de37bcc9d05.js +1 -9
- package/dist/d78d3b050ea95b068380d975fd413fd7.js +1 -9
- package/dist/d79b3962938d65fb85c6f844e86d92d9.js +1 -172
- package/dist/d7b57d5ebdcade0ce5e047509e06861a.js +1 -580
- package/dist/d7d616d4aa8fd3f51d681242853dcde9.js +1 -9
- package/dist/d83f2acd25388452582e5a4c727255b0.js +1 -174
- package/dist/da1c1b1569c4d5872c9a18c29f0b5c90.js +1 -3088
- package/dist/da55f4fe3daed3f79fc4565668ecf7dd.js +1 -97
- package/dist/db8ca5cfb6fe4aaef215f116f6991784.js +1 -9
- package/dist/dbc87324ecf271d088a2ab0823de9c5d.js +1 -75
- package/dist/dbd05051a3ecf6b10e2f7b8904153f2d.js +1 -3194
- package/dist/dc1eb6c1c92d7067c72b82b2833a7d2c.js +1 -2595
- package/dist/dcb197c0214e800da9d9436dfc9437d6.js +1 -162
- package/dist/ddbc961769cd2ff4d4a7a136168ebf4c.js +1 -9
- package/dist/de0fd4fd7c2d7a4887cbc99eed91f797.js +1 -9
- package/dist/df37029cdf8359ecac0aebdf4f257d03.js +1 -386
- package/dist/df5710d97a899b672060afaa8c4891c2.js +1 -316
- package/dist/dfb7dd1fab06b2403f76c23f80b15738.js +1 -1718
- package/dist/e07a0b284934d3a0e8c02c508edc9df1.js +1 -115
- package/dist/e0adad8a8579bf99f3e22f7c214a5c64.js +1 -9
- package/dist/e0e32c3798e8895695ce5b372a0c989f.js +1 -2166
- package/dist/e2b38a8393be2cf23f3894ace3efb1c3.js +1 -9
- package/dist/e3ba4b654313ae98884a6c9044197e09.js +1 -103
- package/dist/e4565878df49fd4ce3edd3f1022c1695.js +1 -244
- package/dist/e4917fa7632b01d28e99304d32d989f7.js +1 -9
- package/dist/e4968d8264b40c14f123f28419eb456d.js +1 -23
- package/dist/e6070e43daf8a9e5f13f515a5a03e66c.js +1 -498
- package/dist/e61779df91186b23e7adf2d1968b2708.js +1 -9
- package/dist/e6ad50b520736b595970c9e07029c3f1.js +1 -9
- package/dist/e6cf8898b285b71e2abe832717ac7060.js +1 -153
- package/dist/e6fae0b04a3000a57f22bb25325c8afe.js +1 -2635
- package/dist/e6fb5287a46e030336c006e3f50ade3a.js +1 -529
- package/dist/e7e1a807af3160b342e0a3550cf8f7c5.js +1 -9
- package/dist/e874d975c9128dc6eb9a513d088bed9f.js +1 -9
- package/dist/e8fa659263d5ca9e0d1be69c048133a8.js +1 -297
- package/dist/e97cfa120fde26da0359ca29afaf3171.js +1 -43
- package/dist/eaa55a522fb2cb2f0287711f42344984.js +1 -9
- package/dist/eba5ee3fb1f3e92af88c69e50b2a8fd1.js +1 -102
- package/dist/ec2d138afc9cc9e81c4c6ef36ed55228.js +1 -103
- package/dist/ec32839f8f3353e66b85450525fa3114.js +1 -2808
- package/dist/ecd02712f5a40fcdaa3bfa8190470024.js +1 -2596
- package/dist/ecd37b343c4dcc8dac849b1c680dcbef.js +1 -1010
- package/dist/ecdb4966f685f3e44b1f28fae46827a3.js +1 -9
- package/dist/ee694c1bcbdc9439e50f816c39fd1023.js +1 -2875
- package/dist/efc14cdf19554635e477781704353ec2.js +1 -9
- package/dist/f0548260c0ac6b0e7cdb8909df1a5333.js +1 -421
- package/dist/f0878cc386a608146dbc8fb3b6745c42.js +1 -422
- package/dist/f326f2f263b1498fedbe1d07d7254d10.js +1 -9
- package/dist/f3c7b9d832aa442df3d140f7697b4f62.js +1 -98
- package/dist/f42342b39da2c42adc65ebcf52839f90.js +1 -102
- package/dist/f4c53706e1721b08e8b2f650c8bd35c4.js +1 -166
- package/dist/f582d9feb91d31036d3dae4cdaea865f.js +1 -3533
- package/dist/f5bea0e1099339b99b21ee2d3c0fc489.js +1 -23
- package/dist/f7186078e00d958aa2b316483dfc7e1c.js +1 -1715
- package/dist/f79630d85284a7f6dadc25c1d256af0a.js +1 -33
- package/dist/f80efec9a63094f19edae0480a0f2cd8.js +1 -635
- package/dist/f90003058d7087f15baa27b80bf08c1d.js +1 -839
- package/dist/f980fd09c34c277299e2d3f83aebdba5.js +1 -102
- package/dist/fb59a7c154104a421146ab9e5bd71540.js +1 -462
- package/dist/fd40b62490e412d27bc67e660aacae19.js +1 -430
- package/dist/fd5bc50b18c9f46380cbe5ec1ac2127b.js +1 -9
- package/dist/fd5e2efd3b2d047abe8473f99c650a35.js +1 -677
- package/dist/fdf4d851b44839d8fdfa77b3419bce19.js +1 -204
- package/dist/ffd3b83e8b5878f4785591ff54b1dfff.js +1 -9
- package/dist/index.js +9 -9
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-207.a88d16e56962fd4d2978.js +0 -2
- package/dist/chunk-207.a88d16e56962fd4d2978.js.map +0 -1
- package/dist/chunk-404.0ea933a6d9513f2665cf.js +0 -2
- package/dist/chunk-404.0ea933a6d9513f2665cf.js.map +0 -1
- package/dist/chunk-actions.1ad5d759ef5d8509c532.js +0 -2
- package/dist/chunk-actions.1ad5d759ef5d8509c532.js.map +0 -1
- package/dist/chunk-code-editor.c86cda6aae761ec82d57.js +0 -2
- package/dist/chunk-code-editor.c86cda6aae761ec82d57.js.map +0 -1
- package/dist/chunk-docs-actions.8a808416a2d69710472e.js.map +0 -1
- package/dist/chunk-vendor-icons.7f0d1996a77d090b3d9c.js +0 -1
|
@@ -1,1169 +1 @@
|
|
|
1
|
-
ace.define("ace/occur",["require","exports","module","ace/lib/oop","ace/range","ace/search","ace/edit_session","ace/search_highlight","ace/lib/dom"], function(require, exports, module) {
|
|
2
|
-
"use strict";
|
|
3
|
-
|
|
4
|
-
var oop = require("./lib/oop");
|
|
5
|
-
var Range = require("./range").Range;
|
|
6
|
-
var Search = require("./search").Search;
|
|
7
|
-
var EditSession = require("./edit_session").EditSession;
|
|
8
|
-
var SearchHighlight = require("./search_highlight").SearchHighlight;
|
|
9
|
-
function Occur() {}
|
|
10
|
-
|
|
11
|
-
oop.inherits(Occur, Search);
|
|
12
|
-
|
|
13
|
-
(function() {
|
|
14
|
-
this.enter = function(editor, options) {
|
|
15
|
-
if (!options.needle) return false;
|
|
16
|
-
var pos = editor.getCursorPosition();
|
|
17
|
-
this.displayOccurContent(editor, options);
|
|
18
|
-
var translatedPos = this.originalToOccurPosition(editor.session, pos);
|
|
19
|
-
editor.moveCursorToPosition(translatedPos);
|
|
20
|
-
return true;
|
|
21
|
-
};
|
|
22
|
-
this.exit = function(editor, options) {
|
|
23
|
-
var pos = options.translatePosition && editor.getCursorPosition();
|
|
24
|
-
var translatedPos = pos && this.occurToOriginalPosition(editor.session, pos);
|
|
25
|
-
this.displayOriginalContent(editor);
|
|
26
|
-
if (translatedPos)
|
|
27
|
-
editor.moveCursorToPosition(translatedPos);
|
|
28
|
-
return true;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
this.highlight = function(sess, regexp) {
|
|
32
|
-
var hl = sess.$occurHighlight = sess.$occurHighlight || sess.addDynamicMarker(
|
|
33
|
-
new SearchHighlight(null, "ace_occur-highlight", "text"));
|
|
34
|
-
hl.setRegexp(regexp);
|
|
35
|
-
sess._emit("changeBackMarker"); // force highlight layer redraw
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
this.displayOccurContent = function(editor, options) {
|
|
39
|
-
this.$originalSession = editor.session;
|
|
40
|
-
var found = this.matchingLines(editor.session, options);
|
|
41
|
-
var lines = found.map(function(foundLine) { return foundLine.content; });
|
|
42
|
-
var occurSession = new EditSession(lines.join('\n'));
|
|
43
|
-
occurSession.$occur = this;
|
|
44
|
-
occurSession.$occurMatchingLines = found;
|
|
45
|
-
editor.setSession(occurSession);
|
|
46
|
-
this.$useEmacsStyleLineStart = this.$originalSession.$useEmacsStyleLineStart;
|
|
47
|
-
occurSession.$useEmacsStyleLineStart = this.$useEmacsStyleLineStart;
|
|
48
|
-
this.highlight(occurSession, options.re);
|
|
49
|
-
occurSession._emit('changeBackMarker');
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
this.displayOriginalContent = function(editor) {
|
|
53
|
-
editor.setSession(this.$originalSession);
|
|
54
|
-
this.$originalSession.$useEmacsStyleLineStart = this.$useEmacsStyleLineStart;
|
|
55
|
-
};
|
|
56
|
-
this.originalToOccurPosition = function(session, pos) {
|
|
57
|
-
var lines = session.$occurMatchingLines;
|
|
58
|
-
var nullPos = {row: 0, column: 0};
|
|
59
|
-
if (!lines) return nullPos;
|
|
60
|
-
for (var i = 0; i < lines.length; i++) {
|
|
61
|
-
if (lines[i].row === pos.row)
|
|
62
|
-
return {row: i, column: pos.column};
|
|
63
|
-
}
|
|
64
|
-
return nullPos;
|
|
65
|
-
};
|
|
66
|
-
this.occurToOriginalPosition = function(session, pos) {
|
|
67
|
-
var lines = session.$occurMatchingLines;
|
|
68
|
-
if (!lines || !lines[pos.row])
|
|
69
|
-
return pos;
|
|
70
|
-
return {row: lines[pos.row].row, column: pos.column};
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
this.matchingLines = function(session, options) {
|
|
74
|
-
options = oop.mixin({}, options);
|
|
75
|
-
if (!session || !options.needle) return [];
|
|
76
|
-
var search = new Search();
|
|
77
|
-
search.set(options);
|
|
78
|
-
return search.findAll(session).reduce(function(lines, range) {
|
|
79
|
-
var row = range.start.row;
|
|
80
|
-
var last = lines[lines.length-1];
|
|
81
|
-
return last && last.row === row ?
|
|
82
|
-
lines :
|
|
83
|
-
lines.concat({row: row, content: session.getLine(row)});
|
|
84
|
-
}, []);
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
}).call(Occur.prototype);
|
|
88
|
-
|
|
89
|
-
var dom = require('./lib/dom');
|
|
90
|
-
dom.importCssString(".ace_occur-highlight {\n\
|
|
91
|
-
border-radius: 4px;\n\
|
|
92
|
-
background-color: rgba(87, 255, 8, 0.25);\n\
|
|
93
|
-
position: absolute;\n\
|
|
94
|
-
z-index: 4;\n\
|
|
95
|
-
box-sizing: border-box;\n\
|
|
96
|
-
box-shadow: 0 0 4px rgb(91, 255, 50);\n\
|
|
97
|
-
}\n\
|
|
98
|
-
.ace_dark .ace_occur-highlight {\n\
|
|
99
|
-
background-color: rgb(80, 140, 85);\n\
|
|
100
|
-
box-shadow: 0 0 4px rgb(60, 120, 70);\n\
|
|
101
|
-
}\n", "incremental-occur-highlighting", false);
|
|
102
|
-
|
|
103
|
-
exports.Occur = Occur;
|
|
104
|
-
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
ace.define("ace/commands/occur_commands",["require","exports","module","ace/config","ace/occur","ace/keyboard/hash_handler","ace/lib/oop"], function(require, exports, module) {
|
|
108
|
-
|
|
109
|
-
var config = require("../config"),
|
|
110
|
-
Occur = require("../occur").Occur;
|
|
111
|
-
var occurStartCommand = {
|
|
112
|
-
name: "occur",
|
|
113
|
-
exec: function(editor, options) {
|
|
114
|
-
var alreadyInOccur = !!editor.session.$occur;
|
|
115
|
-
var occurSessionActive = new Occur().enter(editor, options);
|
|
116
|
-
if (occurSessionActive && !alreadyInOccur)
|
|
117
|
-
OccurKeyboardHandler.installIn(editor);
|
|
118
|
-
},
|
|
119
|
-
readOnly: true
|
|
120
|
-
};
|
|
121
|
-
|
|
122
|
-
var occurCommands = [{
|
|
123
|
-
name: "occurexit",
|
|
124
|
-
bindKey: 'esc|Ctrl-G',
|
|
125
|
-
exec: function(editor) {
|
|
126
|
-
var occur = editor.session.$occur;
|
|
127
|
-
if (!occur) return;
|
|
128
|
-
occur.exit(editor, {});
|
|
129
|
-
if (!editor.session.$occur) OccurKeyboardHandler.uninstallFrom(editor);
|
|
130
|
-
},
|
|
131
|
-
readOnly: true
|
|
132
|
-
}, {
|
|
133
|
-
name: "occuraccept",
|
|
134
|
-
bindKey: 'enter',
|
|
135
|
-
exec: function(editor) {
|
|
136
|
-
var occur = editor.session.$occur;
|
|
137
|
-
if (!occur) return;
|
|
138
|
-
occur.exit(editor, {translatePosition: true});
|
|
139
|
-
if (!editor.session.$occur) OccurKeyboardHandler.uninstallFrom(editor);
|
|
140
|
-
},
|
|
141
|
-
readOnly: true
|
|
142
|
-
}];
|
|
143
|
-
|
|
144
|
-
var HashHandler = require("../keyboard/hash_handler").HashHandler;
|
|
145
|
-
var oop = require("../lib/oop");
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
function OccurKeyboardHandler() {}
|
|
149
|
-
|
|
150
|
-
oop.inherits(OccurKeyboardHandler, HashHandler);
|
|
151
|
-
|
|
152
|
-
(function() {
|
|
153
|
-
|
|
154
|
-
this.isOccurHandler = true;
|
|
155
|
-
|
|
156
|
-
this.attach = function(editor) {
|
|
157
|
-
HashHandler.call(this, occurCommands, editor.commands.platform);
|
|
158
|
-
this.$editor = editor;
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
var handleKeyboard$super = this.handleKeyboard;
|
|
162
|
-
this.handleKeyboard = function(data, hashId, key, keyCode) {
|
|
163
|
-
var cmd = handleKeyboard$super.call(this, data, hashId, key, keyCode);
|
|
164
|
-
return (cmd && cmd.command) ? cmd : undefined;
|
|
165
|
-
};
|
|
166
|
-
|
|
167
|
-
}).call(OccurKeyboardHandler.prototype);
|
|
168
|
-
|
|
169
|
-
OccurKeyboardHandler.installIn = function(editor) {
|
|
170
|
-
var handler = new this();
|
|
171
|
-
editor.keyBinding.addKeyboardHandler(handler);
|
|
172
|
-
editor.commands.addCommands(occurCommands);
|
|
173
|
-
};
|
|
174
|
-
|
|
175
|
-
OccurKeyboardHandler.uninstallFrom = function(editor) {
|
|
176
|
-
editor.commands.removeCommands(occurCommands);
|
|
177
|
-
var handler = editor.getKeyboardHandler();
|
|
178
|
-
if (handler.isOccurHandler)
|
|
179
|
-
editor.keyBinding.removeKeyboardHandler(handler);
|
|
180
|
-
};
|
|
181
|
-
|
|
182
|
-
exports.occurStartCommand = occurStartCommand;
|
|
183
|
-
|
|
184
|
-
});
|
|
185
|
-
|
|
186
|
-
ace.define("ace/commands/incremental_search_commands",["require","exports","module","ace/config","ace/lib/oop","ace/keyboard/hash_handler","ace/commands/occur_commands"], function(require, exports, module) {
|
|
187
|
-
|
|
188
|
-
var config = require("../config");
|
|
189
|
-
var oop = require("../lib/oop");
|
|
190
|
-
var HashHandler = require("../keyboard/hash_handler").HashHandler;
|
|
191
|
-
var occurStartCommand = require("./occur_commands").occurStartCommand;
|
|
192
|
-
exports.iSearchStartCommands = [{
|
|
193
|
-
name: "iSearch",
|
|
194
|
-
bindKey: {win: "Ctrl-F", mac: "Command-F"},
|
|
195
|
-
exec: function(editor, options) {
|
|
196
|
-
config.loadModule(["core", "ace/incremental_search"], function(e) {
|
|
197
|
-
var iSearch = e.iSearch = e.iSearch || new e.IncrementalSearch();
|
|
198
|
-
iSearch.activate(editor, options.backwards);
|
|
199
|
-
if (options.jumpToFirstMatch) iSearch.next(options);
|
|
200
|
-
});
|
|
201
|
-
},
|
|
202
|
-
readOnly: true
|
|
203
|
-
}, {
|
|
204
|
-
name: "iSearchBackwards",
|
|
205
|
-
exec: function(editor, jumpToNext) { editor.execCommand('iSearch', {backwards: true}); },
|
|
206
|
-
readOnly: true
|
|
207
|
-
}, {
|
|
208
|
-
name: "iSearchAndGo",
|
|
209
|
-
bindKey: {win: "Ctrl-K", mac: "Command-G"},
|
|
210
|
-
exec: function(editor, jumpToNext) { editor.execCommand('iSearch', {jumpToFirstMatch: true, useCurrentOrPrevSearch: true}); },
|
|
211
|
-
readOnly: true
|
|
212
|
-
}, {
|
|
213
|
-
name: "iSearchBackwardsAndGo",
|
|
214
|
-
bindKey: {win: "Ctrl-Shift-K", mac: "Command-Shift-G"},
|
|
215
|
-
exec: function(editor) { editor.execCommand('iSearch', {jumpToFirstMatch: true, backwards: true, useCurrentOrPrevSearch: true}); },
|
|
216
|
-
readOnly: true
|
|
217
|
-
}];
|
|
218
|
-
exports.iSearchCommands = [{
|
|
219
|
-
name: "restartSearch",
|
|
220
|
-
bindKey: {win: "Ctrl-F", mac: "Command-F"},
|
|
221
|
-
exec: function(iSearch) {
|
|
222
|
-
iSearch.cancelSearch(true);
|
|
223
|
-
}
|
|
224
|
-
}, {
|
|
225
|
-
name: "searchForward",
|
|
226
|
-
bindKey: {win: "Ctrl-S|Ctrl-K", mac: "Ctrl-S|Command-G"},
|
|
227
|
-
exec: function(iSearch, options) {
|
|
228
|
-
options.useCurrentOrPrevSearch = true;
|
|
229
|
-
iSearch.next(options);
|
|
230
|
-
}
|
|
231
|
-
}, {
|
|
232
|
-
name: "searchBackward",
|
|
233
|
-
bindKey: {win: "Ctrl-R|Ctrl-Shift-K", mac: "Ctrl-R|Command-Shift-G"},
|
|
234
|
-
exec: function(iSearch, options) {
|
|
235
|
-
options.useCurrentOrPrevSearch = true;
|
|
236
|
-
options.backwards = true;
|
|
237
|
-
iSearch.next(options);
|
|
238
|
-
}
|
|
239
|
-
}, {
|
|
240
|
-
name: "extendSearchTerm",
|
|
241
|
-
exec: function(iSearch, string) {
|
|
242
|
-
iSearch.addString(string);
|
|
243
|
-
}
|
|
244
|
-
}, {
|
|
245
|
-
name: "extendSearchTermSpace",
|
|
246
|
-
bindKey: "space",
|
|
247
|
-
exec: function(iSearch) { iSearch.addString(' '); }
|
|
248
|
-
}, {
|
|
249
|
-
name: "shrinkSearchTerm",
|
|
250
|
-
bindKey: "backspace",
|
|
251
|
-
exec: function(iSearch) {
|
|
252
|
-
iSearch.removeChar();
|
|
253
|
-
}
|
|
254
|
-
}, {
|
|
255
|
-
name: 'confirmSearch',
|
|
256
|
-
bindKey: 'return',
|
|
257
|
-
exec: function(iSearch) { iSearch.deactivate(); }
|
|
258
|
-
}, {
|
|
259
|
-
name: 'cancelSearch',
|
|
260
|
-
bindKey: 'esc|Ctrl-G',
|
|
261
|
-
exec: function(iSearch) { iSearch.deactivate(true); }
|
|
262
|
-
}, {
|
|
263
|
-
name: 'occurisearch',
|
|
264
|
-
bindKey: 'Ctrl-O',
|
|
265
|
-
exec: function(iSearch) {
|
|
266
|
-
var options = oop.mixin({}, iSearch.$options);
|
|
267
|
-
iSearch.deactivate();
|
|
268
|
-
occurStartCommand.exec(iSearch.$editor, options);
|
|
269
|
-
}
|
|
270
|
-
}, {
|
|
271
|
-
name: "yankNextWord",
|
|
272
|
-
bindKey: "Ctrl-w",
|
|
273
|
-
exec: function(iSearch) {
|
|
274
|
-
var ed = iSearch.$editor,
|
|
275
|
-
range = ed.selection.getRangeOfMovements(function(sel) { sel.moveCursorWordRight(); }),
|
|
276
|
-
string = ed.session.getTextRange(range);
|
|
277
|
-
iSearch.addString(string);
|
|
278
|
-
}
|
|
279
|
-
}, {
|
|
280
|
-
name: "yankNextChar",
|
|
281
|
-
bindKey: "Ctrl-Alt-y",
|
|
282
|
-
exec: function(iSearch) {
|
|
283
|
-
var ed = iSearch.$editor,
|
|
284
|
-
range = ed.selection.getRangeOfMovements(function(sel) { sel.moveCursorRight(); }),
|
|
285
|
-
string = ed.session.getTextRange(range);
|
|
286
|
-
iSearch.addString(string);
|
|
287
|
-
}
|
|
288
|
-
}, {
|
|
289
|
-
name: 'recenterTopBottom',
|
|
290
|
-
bindKey: 'Ctrl-l',
|
|
291
|
-
exec: function(iSearch) { iSearch.$editor.execCommand('recenterTopBottom'); }
|
|
292
|
-
}, {
|
|
293
|
-
name: 'selectAllMatches',
|
|
294
|
-
bindKey: 'Ctrl-space',
|
|
295
|
-
exec: function(iSearch) {
|
|
296
|
-
var ed = iSearch.$editor,
|
|
297
|
-
hl = ed.session.$isearchHighlight,
|
|
298
|
-
ranges = hl && hl.cache ? hl.cache
|
|
299
|
-
.reduce(function(ranges, ea) {
|
|
300
|
-
return ranges.concat(ea ? ea : []); }, []) : [];
|
|
301
|
-
iSearch.deactivate(false);
|
|
302
|
-
ranges.forEach(ed.selection.addRange.bind(ed.selection));
|
|
303
|
-
}
|
|
304
|
-
}, {
|
|
305
|
-
name: 'searchAsRegExp',
|
|
306
|
-
bindKey: 'Alt-r',
|
|
307
|
-
exec: function(iSearch) {
|
|
308
|
-
iSearch.convertNeedleToRegExp();
|
|
309
|
-
}
|
|
310
|
-
}].map(function(cmd) {
|
|
311
|
-
cmd.readOnly = true;
|
|
312
|
-
cmd.isIncrementalSearchCommand = true;
|
|
313
|
-
cmd.scrollIntoView = "animate-cursor";
|
|
314
|
-
return cmd;
|
|
315
|
-
});
|
|
316
|
-
|
|
317
|
-
function IncrementalSearchKeyboardHandler(iSearch) {
|
|
318
|
-
this.$iSearch = iSearch;
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
oop.inherits(IncrementalSearchKeyboardHandler, HashHandler);
|
|
322
|
-
|
|
323
|
-
(function() {
|
|
324
|
-
|
|
325
|
-
this.attach = function(editor) {
|
|
326
|
-
var iSearch = this.$iSearch;
|
|
327
|
-
HashHandler.call(this, exports.iSearchCommands, editor.commands.platform);
|
|
328
|
-
this.$commandExecHandler = editor.commands.on('exec', function(e) {
|
|
329
|
-
if (!e.command.isIncrementalSearchCommand)
|
|
330
|
-
return iSearch.deactivate();
|
|
331
|
-
e.stopPropagation();
|
|
332
|
-
e.preventDefault();
|
|
333
|
-
var scrollTop = editor.session.getScrollTop();
|
|
334
|
-
var result = e.command.exec(iSearch, e.args || {});
|
|
335
|
-
editor.renderer.scrollCursorIntoView(null, 0.5);
|
|
336
|
-
editor.renderer.animateScrolling(scrollTop);
|
|
337
|
-
return result;
|
|
338
|
-
});
|
|
339
|
-
};
|
|
340
|
-
|
|
341
|
-
this.detach = function(editor) {
|
|
342
|
-
if (!this.$commandExecHandler) return;
|
|
343
|
-
editor.commands.off('exec', this.$commandExecHandler);
|
|
344
|
-
delete this.$commandExecHandler;
|
|
345
|
-
};
|
|
346
|
-
|
|
347
|
-
var handleKeyboard$super = this.handleKeyboard;
|
|
348
|
-
this.handleKeyboard = function(data, hashId, key, keyCode) {
|
|
349
|
-
if (((hashId === 1/*ctrl*/ || hashId === 8/*command*/) && key === 'v')
|
|
350
|
-
|| (hashId === 1/*ctrl*/ && key === 'y')) return null;
|
|
351
|
-
var cmd = handleKeyboard$super.call(this, data, hashId, key, keyCode);
|
|
352
|
-
if (cmd && cmd.command) { return cmd; }
|
|
353
|
-
if (hashId == -1) {
|
|
354
|
-
var extendCmd = this.commands.extendSearchTerm;
|
|
355
|
-
if (extendCmd) { return {command: extendCmd, args: key}; }
|
|
356
|
-
}
|
|
357
|
-
return false;
|
|
358
|
-
};
|
|
359
|
-
|
|
360
|
-
}).call(IncrementalSearchKeyboardHandler.prototype);
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
exports.IncrementalSearchKeyboardHandler = IncrementalSearchKeyboardHandler;
|
|
364
|
-
|
|
365
|
-
});
|
|
366
|
-
|
|
367
|
-
ace.define("ace/incremental_search",["require","exports","module","ace/lib/oop","ace/range","ace/search","ace/search_highlight","ace/commands/incremental_search_commands","ace/lib/dom","ace/commands/command_manager","ace/editor","ace/config"], function(require, exports, module) {
|
|
368
|
-
"use strict";
|
|
369
|
-
|
|
370
|
-
var oop = require("./lib/oop");
|
|
371
|
-
var Range = require("./range").Range;
|
|
372
|
-
var Search = require("./search").Search;
|
|
373
|
-
var SearchHighlight = require("./search_highlight").SearchHighlight;
|
|
374
|
-
var iSearchCommandModule = require("./commands/incremental_search_commands");
|
|
375
|
-
var ISearchKbd = iSearchCommandModule.IncrementalSearchKeyboardHandler;
|
|
376
|
-
function IncrementalSearch() {
|
|
377
|
-
this.$options = {wrap: false, skipCurrent: false};
|
|
378
|
-
this.$keyboardHandler = new ISearchKbd(this);
|
|
379
|
-
}
|
|
380
|
-
|
|
381
|
-
oop.inherits(IncrementalSearch, Search);
|
|
382
|
-
|
|
383
|
-
function isRegExp(obj) {
|
|
384
|
-
return obj instanceof RegExp;
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
function regExpToObject(re) {
|
|
388
|
-
var string = String(re),
|
|
389
|
-
start = string.indexOf('/'),
|
|
390
|
-
flagStart = string.lastIndexOf('/');
|
|
391
|
-
return {
|
|
392
|
-
expression: string.slice(start+1, flagStart),
|
|
393
|
-
flags: string.slice(flagStart+1)
|
|
394
|
-
};
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
function stringToRegExp(string, flags) {
|
|
398
|
-
try {
|
|
399
|
-
return new RegExp(string, flags);
|
|
400
|
-
} catch (e) { return string; }
|
|
401
|
-
}
|
|
402
|
-
|
|
403
|
-
function objectToRegExp(obj) {
|
|
404
|
-
return stringToRegExp(obj.expression, obj.flags);
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
(function() {
|
|
408
|
-
|
|
409
|
-
this.activate = function(editor, backwards) {
|
|
410
|
-
this.$editor = editor;
|
|
411
|
-
this.$startPos = this.$currentPos = editor.getCursorPosition();
|
|
412
|
-
this.$options.needle = '';
|
|
413
|
-
this.$options.backwards = backwards;
|
|
414
|
-
editor.keyBinding.addKeyboardHandler(this.$keyboardHandler);
|
|
415
|
-
this.$originalEditorOnPaste = editor.onPaste;
|
|
416
|
-
editor.onPaste = this.onPaste.bind(this);
|
|
417
|
-
this.$mousedownHandler = editor.on('mousedown', this.onMouseDown.bind(this));
|
|
418
|
-
this.selectionFix(editor);
|
|
419
|
-
this.statusMessage(true);
|
|
420
|
-
};
|
|
421
|
-
|
|
422
|
-
this.deactivate = function(reset) {
|
|
423
|
-
this.cancelSearch(reset);
|
|
424
|
-
var editor = this.$editor;
|
|
425
|
-
editor.keyBinding.removeKeyboardHandler(this.$keyboardHandler);
|
|
426
|
-
if (this.$mousedownHandler) {
|
|
427
|
-
editor.off('mousedown', this.$mousedownHandler);
|
|
428
|
-
delete this.$mousedownHandler;
|
|
429
|
-
}
|
|
430
|
-
editor.onPaste = this.$originalEditorOnPaste;
|
|
431
|
-
this.message('');
|
|
432
|
-
};
|
|
433
|
-
|
|
434
|
-
this.selectionFix = function(editor) {
|
|
435
|
-
if (editor.selection.isEmpty() && !editor.session.$emacsMark) {
|
|
436
|
-
editor.clearSelection();
|
|
437
|
-
}
|
|
438
|
-
};
|
|
439
|
-
|
|
440
|
-
this.highlight = function(regexp) {
|
|
441
|
-
var sess = this.$editor.session,
|
|
442
|
-
hl = sess.$isearchHighlight = sess.$isearchHighlight || sess.addDynamicMarker(
|
|
443
|
-
new SearchHighlight(null, "ace_isearch-result", "text"));
|
|
444
|
-
hl.setRegexp(regexp);
|
|
445
|
-
sess._emit("changeBackMarker"); // force highlight layer redraw
|
|
446
|
-
};
|
|
447
|
-
|
|
448
|
-
this.cancelSearch = function(reset) {
|
|
449
|
-
var e = this.$editor;
|
|
450
|
-
this.$prevNeedle = this.$options.needle;
|
|
451
|
-
this.$options.needle = '';
|
|
452
|
-
if (reset) {
|
|
453
|
-
e.moveCursorToPosition(this.$startPos);
|
|
454
|
-
this.$currentPos = this.$startPos;
|
|
455
|
-
} else {
|
|
456
|
-
e.pushEmacsMark && e.pushEmacsMark(this.$startPos, false);
|
|
457
|
-
}
|
|
458
|
-
this.highlight(null);
|
|
459
|
-
return Range.fromPoints(this.$currentPos, this.$currentPos);
|
|
460
|
-
};
|
|
461
|
-
|
|
462
|
-
this.highlightAndFindWithNeedle = function(moveToNext, needleUpdateFunc) {
|
|
463
|
-
if (!this.$editor) return null;
|
|
464
|
-
var options = this.$options;
|
|
465
|
-
if (needleUpdateFunc) {
|
|
466
|
-
options.needle = needleUpdateFunc.call(this, options.needle || '') || '';
|
|
467
|
-
}
|
|
468
|
-
if (options.needle.length === 0) {
|
|
469
|
-
this.statusMessage(true);
|
|
470
|
-
return this.cancelSearch(true);
|
|
471
|
-
}
|
|
472
|
-
options.start = this.$currentPos;
|
|
473
|
-
var session = this.$editor.session,
|
|
474
|
-
found = this.find(session),
|
|
475
|
-
shouldSelect = this.$editor.emacsMark ?
|
|
476
|
-
!!this.$editor.emacsMark() : !this.$editor.selection.isEmpty();
|
|
477
|
-
if (found) {
|
|
478
|
-
if (options.backwards) found = Range.fromPoints(found.end, found.start);
|
|
479
|
-
this.$editor.selection.setRange(Range.fromPoints(shouldSelect ? this.$startPos : found.end, found.end));
|
|
480
|
-
if (moveToNext) this.$currentPos = found.end;
|
|
481
|
-
this.highlight(options.re);
|
|
482
|
-
}
|
|
483
|
-
|
|
484
|
-
this.statusMessage(found);
|
|
485
|
-
|
|
486
|
-
return found;
|
|
487
|
-
};
|
|
488
|
-
|
|
489
|
-
this.addString = function(s) {
|
|
490
|
-
return this.highlightAndFindWithNeedle(false, function(needle) {
|
|
491
|
-
if (!isRegExp(needle))
|
|
492
|
-
return needle + s;
|
|
493
|
-
var reObj = regExpToObject(needle);
|
|
494
|
-
reObj.expression += s;
|
|
495
|
-
return objectToRegExp(reObj);
|
|
496
|
-
});
|
|
497
|
-
};
|
|
498
|
-
|
|
499
|
-
this.removeChar = function(c) {
|
|
500
|
-
return this.highlightAndFindWithNeedle(false, function(needle) {
|
|
501
|
-
if (!isRegExp(needle))
|
|
502
|
-
return needle.substring(0, needle.length-1);
|
|
503
|
-
var reObj = regExpToObject(needle);
|
|
504
|
-
reObj.expression = reObj.expression.substring(0, reObj.expression.length-1);
|
|
505
|
-
return objectToRegExp(reObj);
|
|
506
|
-
});
|
|
507
|
-
};
|
|
508
|
-
|
|
509
|
-
this.next = function(options) {
|
|
510
|
-
options = options || {};
|
|
511
|
-
this.$options.backwards = !!options.backwards;
|
|
512
|
-
this.$currentPos = this.$editor.getCursorPosition();
|
|
513
|
-
return this.highlightAndFindWithNeedle(true, function(needle) {
|
|
514
|
-
return options.useCurrentOrPrevSearch && needle.length === 0 ?
|
|
515
|
-
this.$prevNeedle || '' : needle;
|
|
516
|
-
});
|
|
517
|
-
};
|
|
518
|
-
|
|
519
|
-
this.onMouseDown = function(evt) {
|
|
520
|
-
this.deactivate();
|
|
521
|
-
return true;
|
|
522
|
-
};
|
|
523
|
-
|
|
524
|
-
this.onPaste = function(text) {
|
|
525
|
-
this.addString(text);
|
|
526
|
-
};
|
|
527
|
-
|
|
528
|
-
this.convertNeedleToRegExp = function() {
|
|
529
|
-
return this.highlightAndFindWithNeedle(false, function(needle) {
|
|
530
|
-
return isRegExp(needle) ? needle : stringToRegExp(needle, 'ig');
|
|
531
|
-
});
|
|
532
|
-
};
|
|
533
|
-
|
|
534
|
-
this.convertNeedleToString = function() {
|
|
535
|
-
return this.highlightAndFindWithNeedle(false, function(needle) {
|
|
536
|
-
return isRegExp(needle) ? regExpToObject(needle).expression : needle;
|
|
537
|
-
});
|
|
538
|
-
};
|
|
539
|
-
|
|
540
|
-
this.statusMessage = function(found) {
|
|
541
|
-
var options = this.$options, msg = '';
|
|
542
|
-
msg += options.backwards ? 'reverse-' : '';
|
|
543
|
-
msg += 'isearch: ' + options.needle;
|
|
544
|
-
msg += found ? '' : ' (not found)';
|
|
545
|
-
this.message(msg);
|
|
546
|
-
};
|
|
547
|
-
|
|
548
|
-
this.message = function(msg) {
|
|
549
|
-
if (this.$editor.showCommandLine) {
|
|
550
|
-
this.$editor.showCommandLine(msg);
|
|
551
|
-
this.$editor.focus();
|
|
552
|
-
}
|
|
553
|
-
};
|
|
554
|
-
|
|
555
|
-
}).call(IncrementalSearch.prototype);
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
exports.IncrementalSearch = IncrementalSearch;
|
|
559
|
-
|
|
560
|
-
var dom = require('./lib/dom');
|
|
561
|
-
dom.importCssString("\
|
|
562
|
-
.ace_marker-layer .ace_isearch-result {\
|
|
563
|
-
position: absolute;\
|
|
564
|
-
z-index: 6;\
|
|
565
|
-
box-sizing: border-box;\
|
|
566
|
-
}\
|
|
567
|
-
div.ace_isearch-result {\
|
|
568
|
-
border-radius: 4px;\
|
|
569
|
-
background-color: rgba(255, 200, 0, 0.5);\
|
|
570
|
-
box-shadow: 0 0 4px rgb(255, 200, 0);\
|
|
571
|
-
}\
|
|
572
|
-
.ace_dark div.ace_isearch-result {\
|
|
573
|
-
background-color: rgb(100, 110, 160);\
|
|
574
|
-
box-shadow: 0 0 4px rgb(80, 90, 140);\
|
|
575
|
-
}", "incremental-search-highlighting", false);
|
|
576
|
-
var commands = require("./commands/command_manager");
|
|
577
|
-
(function() {
|
|
578
|
-
this.setupIncrementalSearch = function(editor, val) {
|
|
579
|
-
if (this.usesIncrementalSearch == val) return;
|
|
580
|
-
this.usesIncrementalSearch = val;
|
|
581
|
-
var iSearchCommands = iSearchCommandModule.iSearchStartCommands;
|
|
582
|
-
var method = val ? 'addCommands' : 'removeCommands';
|
|
583
|
-
this[method](iSearchCommands);
|
|
584
|
-
};
|
|
585
|
-
}).call(commands.CommandManager.prototype);
|
|
586
|
-
var Editor = require("./editor").Editor;
|
|
587
|
-
require("./config").defineOptions(Editor.prototype, "editor", {
|
|
588
|
-
useIncrementalSearch: {
|
|
589
|
-
set: function(val) {
|
|
590
|
-
this.keyBinding.$handlers.forEach(function(handler) {
|
|
591
|
-
if (handler.setupIncrementalSearch) {
|
|
592
|
-
handler.setupIncrementalSearch(this, val);
|
|
593
|
-
}
|
|
594
|
-
});
|
|
595
|
-
this._emit('incrementalSearchSettingChanged', {isEnabled: val});
|
|
596
|
-
}
|
|
597
|
-
}
|
|
598
|
-
});
|
|
599
|
-
|
|
600
|
-
});
|
|
601
|
-
|
|
602
|
-
ace.define("ace/keyboard/emacs",["require","exports","module","ace/lib/dom","ace/incremental_search","ace/commands/incremental_search_commands","ace/keyboard/hash_handler","ace/lib/keys"], function(require, exports, module) {
|
|
603
|
-
"use strict";
|
|
604
|
-
|
|
605
|
-
var dom = require("../lib/dom");
|
|
606
|
-
require("../incremental_search");
|
|
607
|
-
var iSearchCommandModule = require("../commands/incremental_search_commands");
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
var HashHandler = require("./hash_handler").HashHandler;
|
|
611
|
-
exports.handler = new HashHandler();
|
|
612
|
-
|
|
613
|
-
exports.handler.isEmacs = true;
|
|
614
|
-
exports.handler.$id = "ace/keyboard/emacs";
|
|
615
|
-
|
|
616
|
-
var initialized = false;
|
|
617
|
-
var $formerLongWords;
|
|
618
|
-
var $formerLineStart;
|
|
619
|
-
|
|
620
|
-
exports.handler.attach = function(editor) {
|
|
621
|
-
if (!initialized) {
|
|
622
|
-
initialized = true;
|
|
623
|
-
dom.importCssString('\
|
|
624
|
-
.emacs-mode .ace_cursor{\
|
|
625
|
-
border: 1px rgba(50,250,50,0.8) solid!important;\
|
|
626
|
-
box-sizing: border-box!important;\
|
|
627
|
-
background-color: rgba(0,250,0,0.9);\
|
|
628
|
-
opacity: 0.5;\
|
|
629
|
-
}\
|
|
630
|
-
.emacs-mode .ace_hidden-cursors .ace_cursor{\
|
|
631
|
-
opacity: 1;\
|
|
632
|
-
background-color: transparent;\
|
|
633
|
-
}\
|
|
634
|
-
.emacs-mode .ace_overwrite-cursors .ace_cursor {\
|
|
635
|
-
opacity: 1;\
|
|
636
|
-
background-color: transparent;\
|
|
637
|
-
border-width: 0 0 2px 2px !important;\
|
|
638
|
-
}\
|
|
639
|
-
.emacs-mode .ace_text-layer {\
|
|
640
|
-
z-index: 4\
|
|
641
|
-
}\
|
|
642
|
-
.emacs-mode .ace_cursor-layer {\
|
|
643
|
-
z-index: 2\
|
|
644
|
-
}', 'emacsMode'
|
|
645
|
-
);
|
|
646
|
-
}
|
|
647
|
-
$formerLongWords = editor.session.$selectLongWords;
|
|
648
|
-
editor.session.$selectLongWords = true;
|
|
649
|
-
$formerLineStart = editor.session.$useEmacsStyleLineStart;
|
|
650
|
-
editor.session.$useEmacsStyleLineStart = true;
|
|
651
|
-
|
|
652
|
-
editor.session.$emacsMark = null; // the active mark
|
|
653
|
-
editor.session.$emacsMarkRing = editor.session.$emacsMarkRing || [];
|
|
654
|
-
|
|
655
|
-
editor.emacsMark = function() {
|
|
656
|
-
return this.session.$emacsMark;
|
|
657
|
-
};
|
|
658
|
-
|
|
659
|
-
editor.setEmacsMark = function(p) {
|
|
660
|
-
this.session.$emacsMark = p;
|
|
661
|
-
};
|
|
662
|
-
|
|
663
|
-
editor.pushEmacsMark = function(p, activate) {
|
|
664
|
-
var prevMark = this.session.$emacsMark;
|
|
665
|
-
if (prevMark)
|
|
666
|
-
this.session.$emacsMarkRing.push(prevMark);
|
|
667
|
-
if (!p || activate) this.setEmacsMark(p);
|
|
668
|
-
else this.session.$emacsMarkRing.push(p);
|
|
669
|
-
};
|
|
670
|
-
|
|
671
|
-
editor.popEmacsMark = function() {
|
|
672
|
-
var mark = this.emacsMark();
|
|
673
|
-
if (mark) { this.setEmacsMark(null); return mark; }
|
|
674
|
-
return this.session.$emacsMarkRing.pop();
|
|
675
|
-
};
|
|
676
|
-
|
|
677
|
-
editor.getLastEmacsMark = function(p) {
|
|
678
|
-
return this.session.$emacsMark || this.session.$emacsMarkRing.slice(-1)[0];
|
|
679
|
-
};
|
|
680
|
-
|
|
681
|
-
editor.emacsMarkForSelection = function(replacement) {
|
|
682
|
-
var sel = this.selection,
|
|
683
|
-
multiRangeLength = this.multiSelect ?
|
|
684
|
-
this.multiSelect.getAllRanges().length : 1,
|
|
685
|
-
selIndex = sel.index || 0,
|
|
686
|
-
markRing = this.session.$emacsMarkRing,
|
|
687
|
-
markIndex = markRing.length - (multiRangeLength - selIndex),
|
|
688
|
-
lastMark = markRing[markIndex] || sel.anchor;
|
|
689
|
-
if (replacement) {
|
|
690
|
-
markRing.splice(markIndex, 1,
|
|
691
|
-
"row" in replacement && "column" in replacement ?
|
|
692
|
-
replacement : undefined);
|
|
693
|
-
}
|
|
694
|
-
return lastMark;
|
|
695
|
-
};
|
|
696
|
-
|
|
697
|
-
editor.on("click", $resetMarkMode);
|
|
698
|
-
editor.on("changeSession", $kbSessionChange);
|
|
699
|
-
editor.renderer.$blockCursor = true;
|
|
700
|
-
editor.setStyle("emacs-mode");
|
|
701
|
-
editor.commands.addCommands(commands);
|
|
702
|
-
exports.handler.platform = editor.commands.platform;
|
|
703
|
-
editor.$emacsModeHandler = this;
|
|
704
|
-
editor.on('copy', this.onCopy);
|
|
705
|
-
editor.on('paste', this.onPaste);
|
|
706
|
-
};
|
|
707
|
-
|
|
708
|
-
exports.handler.detach = function(editor) {
|
|
709
|
-
editor.renderer.$blockCursor = false;
|
|
710
|
-
editor.session.$selectLongWords = $formerLongWords;
|
|
711
|
-
editor.session.$useEmacsStyleLineStart = $formerLineStart;
|
|
712
|
-
editor.off("click", $resetMarkMode);
|
|
713
|
-
editor.off("changeSession", $kbSessionChange);
|
|
714
|
-
editor.unsetStyle("emacs-mode");
|
|
715
|
-
editor.commands.removeCommands(commands);
|
|
716
|
-
editor.off('copy', this.onCopy);
|
|
717
|
-
editor.off('paste', this.onPaste);
|
|
718
|
-
editor.$emacsModeHandler = null;
|
|
719
|
-
};
|
|
720
|
-
|
|
721
|
-
var $kbSessionChange = function(e) {
|
|
722
|
-
if (e.oldSession) {
|
|
723
|
-
e.oldSession.$selectLongWords = $formerLongWords;
|
|
724
|
-
e.oldSession.$useEmacsStyleLineStart = $formerLineStart;
|
|
725
|
-
}
|
|
726
|
-
|
|
727
|
-
$formerLongWords = e.session.$selectLongWords;
|
|
728
|
-
e.session.$selectLongWords = true;
|
|
729
|
-
$formerLineStart = e.session.$useEmacsStyleLineStart;
|
|
730
|
-
e.session.$useEmacsStyleLineStart = true;
|
|
731
|
-
|
|
732
|
-
if (!e.session.hasOwnProperty('$emacsMark'))
|
|
733
|
-
e.session.$emacsMark = null;
|
|
734
|
-
if (!e.session.hasOwnProperty('$emacsMarkRing'))
|
|
735
|
-
e.session.$emacsMarkRing = [];
|
|
736
|
-
};
|
|
737
|
-
|
|
738
|
-
var $resetMarkMode = function(e) {
|
|
739
|
-
e.editor.session.$emacsMark = null;
|
|
740
|
-
};
|
|
741
|
-
|
|
742
|
-
var keys = require("../lib/keys").KEY_MODS;
|
|
743
|
-
var eMods = {C: "ctrl", S: "shift", M: "alt", CMD: "command"};
|
|
744
|
-
var combinations = ["C-S-M-CMD",
|
|
745
|
-
"S-M-CMD", "C-M-CMD", "C-S-CMD", "C-S-M",
|
|
746
|
-
"M-CMD", "S-CMD", "S-M", "C-CMD", "C-M", "C-S",
|
|
747
|
-
"CMD", "M", "S", "C"];
|
|
748
|
-
combinations.forEach(function(c) {
|
|
749
|
-
var hashId = 0;
|
|
750
|
-
c.split("-").forEach(function(c) {
|
|
751
|
-
hashId = hashId | keys[eMods[c]];
|
|
752
|
-
});
|
|
753
|
-
eMods[hashId] = c.toLowerCase() + "-";
|
|
754
|
-
});
|
|
755
|
-
|
|
756
|
-
exports.handler.onCopy = function(e, editor) {
|
|
757
|
-
if (editor.$handlesEmacsOnCopy) return;
|
|
758
|
-
editor.$handlesEmacsOnCopy = true;
|
|
759
|
-
exports.handler.commands.killRingSave.exec(editor);
|
|
760
|
-
editor.$handlesEmacsOnCopy = false;
|
|
761
|
-
};
|
|
762
|
-
|
|
763
|
-
exports.handler.onPaste = function(e, editor) {
|
|
764
|
-
editor.pushEmacsMark(editor.getCursorPosition());
|
|
765
|
-
};
|
|
766
|
-
|
|
767
|
-
exports.handler.bindKey = function(key, command) {
|
|
768
|
-
if (typeof key == "object")
|
|
769
|
-
key = key[this.platform];
|
|
770
|
-
if (!key)
|
|
771
|
-
return;
|
|
772
|
-
|
|
773
|
-
var ckb = this.commandKeyBinding;
|
|
774
|
-
key.split("|").forEach(function(keyPart) {
|
|
775
|
-
keyPart = keyPart.toLowerCase();
|
|
776
|
-
ckb[keyPart] = command;
|
|
777
|
-
var keyParts = keyPart.split(" ").slice(0,-1);
|
|
778
|
-
keyParts.reduce(function(keyMapKeys, keyPart, i) {
|
|
779
|
-
var prefix = keyMapKeys[i-1] ? keyMapKeys[i-1] + ' ' : '';
|
|
780
|
-
return keyMapKeys.concat([prefix + keyPart]);
|
|
781
|
-
}, []).forEach(function(keyPart) {
|
|
782
|
-
if (!ckb[keyPart]) ckb[keyPart] = "null";
|
|
783
|
-
});
|
|
784
|
-
}, this);
|
|
785
|
-
};
|
|
786
|
-
|
|
787
|
-
exports.handler.getStatusText = function(editor, data) {
|
|
788
|
-
var str = "";
|
|
789
|
-
if (data.count)
|
|
790
|
-
str += data.count;
|
|
791
|
-
if (data.keyChain)
|
|
792
|
-
str += " " + data.keyChain;
|
|
793
|
-
return str;
|
|
794
|
-
};
|
|
795
|
-
|
|
796
|
-
exports.handler.handleKeyboard = function(data, hashId, key, keyCode) {
|
|
797
|
-
if (keyCode === -1) return undefined;
|
|
798
|
-
|
|
799
|
-
var editor = data.editor;
|
|
800
|
-
editor._signal("changeStatus");
|
|
801
|
-
if (hashId == -1) {
|
|
802
|
-
editor.pushEmacsMark();
|
|
803
|
-
if (data.count) {
|
|
804
|
-
var str = new Array(data.count + 1).join(key);
|
|
805
|
-
data.count = null;
|
|
806
|
-
return {command: "insertstring", args: str};
|
|
807
|
-
}
|
|
808
|
-
}
|
|
809
|
-
|
|
810
|
-
var modifier = eMods[hashId];
|
|
811
|
-
if (modifier == "c-" || data.count) {
|
|
812
|
-
var count = parseInt(key[key.length - 1]);
|
|
813
|
-
if (typeof count === 'number' && !isNaN(count)) {
|
|
814
|
-
data.count = Math.max(data.count, 0) || 0;
|
|
815
|
-
data.count = 10 * data.count + count;
|
|
816
|
-
return {command: "null"};
|
|
817
|
-
}
|
|
818
|
-
}
|
|
819
|
-
if (modifier) key = modifier + key;
|
|
820
|
-
if (data.keyChain) key = data.keyChain += " " + key;
|
|
821
|
-
var command = this.commandKeyBinding[key];
|
|
822
|
-
data.keyChain = command == "null" ? key : "";
|
|
823
|
-
if (!command) return undefined;
|
|
824
|
-
if (command === "null") return {command: "null"};
|
|
825
|
-
|
|
826
|
-
if (command === "universalArgument") {
|
|
827
|
-
data.count = -4;
|
|
828
|
-
return {command: "null"};
|
|
829
|
-
}
|
|
830
|
-
var args;
|
|
831
|
-
if (typeof command !== "string") {
|
|
832
|
-
args = command.args;
|
|
833
|
-
if (command.command) command = command.command;
|
|
834
|
-
if (command === "goorselect") {
|
|
835
|
-
command = editor.emacsMark() ? args[1] : args[0];
|
|
836
|
-
args = null;
|
|
837
|
-
}
|
|
838
|
-
}
|
|
839
|
-
|
|
840
|
-
if (typeof command === "string") {
|
|
841
|
-
if (command === "insertstring" ||
|
|
842
|
-
command === "splitline" ||
|
|
843
|
-
command === "togglecomment") {
|
|
844
|
-
editor.pushEmacsMark();
|
|
845
|
-
}
|
|
846
|
-
command = this.commands[command] || editor.commands.commands[command];
|
|
847
|
-
if (!command) return undefined;
|
|
848
|
-
}
|
|
849
|
-
|
|
850
|
-
if (!command.readOnly && !command.isYank)
|
|
851
|
-
data.lastCommand = null;
|
|
852
|
-
|
|
853
|
-
if (!command.readOnly && editor.emacsMark())
|
|
854
|
-
editor.setEmacsMark(null);
|
|
855
|
-
|
|
856
|
-
if (data.count) {
|
|
857
|
-
var count = data.count;
|
|
858
|
-
data.count = 0;
|
|
859
|
-
if (!command || !command.handlesCount) {
|
|
860
|
-
return {
|
|
861
|
-
args: args,
|
|
862
|
-
command: {
|
|
863
|
-
exec: function(editor, args) {
|
|
864
|
-
for (var i = 0; i < count; i++)
|
|
865
|
-
command.exec(editor, args);
|
|
866
|
-
},
|
|
867
|
-
multiSelectAction: command.multiSelectAction
|
|
868
|
-
}
|
|
869
|
-
};
|
|
870
|
-
} else {
|
|
871
|
-
if (!args) args = {};
|
|
872
|
-
if (typeof args === 'object') args.count = count;
|
|
873
|
-
}
|
|
874
|
-
}
|
|
875
|
-
|
|
876
|
-
return {command: command, args: args};
|
|
877
|
-
};
|
|
878
|
-
|
|
879
|
-
exports.emacsKeys = {
|
|
880
|
-
"Up|C-p" : {command: "goorselect", args: ["golineup","selectup"]},
|
|
881
|
-
"Down|C-n" : {command: "goorselect", args: ["golinedown","selectdown"]},
|
|
882
|
-
"Left|C-b" : {command: "goorselect", args: ["gotoleft","selectleft"]},
|
|
883
|
-
"Right|C-f" : {command: "goorselect", args: ["gotoright","selectright"]},
|
|
884
|
-
"C-Left|M-b" : {command: "goorselect", args: ["gotowordleft","selectwordleft"]},
|
|
885
|
-
"C-Right|M-f" : {command: "goorselect", args: ["gotowordright","selectwordright"]},
|
|
886
|
-
"Home|C-a" : {command: "goorselect", args: ["gotolinestart","selecttolinestart"]},
|
|
887
|
-
"End|C-e" : {command: "goorselect", args: ["gotolineend","selecttolineend"]},
|
|
888
|
-
"C-Home|S-M-,": {command: "goorselect", args: ["gotostart","selecttostart"]},
|
|
889
|
-
"C-End|S-M-." : {command: "goorselect", args: ["gotoend","selecttoend"]},
|
|
890
|
-
"S-Up|S-C-p" : "selectup",
|
|
891
|
-
"S-Down|S-C-n" : "selectdown",
|
|
892
|
-
"S-Left|S-C-b" : "selectleft",
|
|
893
|
-
"S-Right|S-C-f" : "selectright",
|
|
894
|
-
"S-C-Left|S-M-b" : "selectwordleft",
|
|
895
|
-
"S-C-Right|S-M-f" : "selectwordright",
|
|
896
|
-
"S-Home|S-C-a" : "selecttolinestart",
|
|
897
|
-
"S-End|S-C-e" : "selecttolineend",
|
|
898
|
-
"S-C-Home" : "selecttostart",
|
|
899
|
-
"S-C-End" : "selecttoend",
|
|
900
|
-
|
|
901
|
-
"C-l" : "recenterTopBottom",
|
|
902
|
-
"M-s" : "centerselection",
|
|
903
|
-
"M-g": "gotoline",
|
|
904
|
-
"C-x C-p": "selectall",
|
|
905
|
-
"C-Down": {command: "goorselect", args: ["gotopagedown","selectpagedown"]},
|
|
906
|
-
"C-Up": {command: "goorselect", args: ["gotopageup","selectpageup"]},
|
|
907
|
-
"PageDown|C-v": {command: "goorselect", args: ["gotopagedown","selectpagedown"]},
|
|
908
|
-
"PageUp|M-v": {command: "goorselect", args: ["gotopageup","selectpageup"]},
|
|
909
|
-
"S-C-Down": "selectpagedown",
|
|
910
|
-
"S-C-Up": "selectpageup",
|
|
911
|
-
|
|
912
|
-
"C-s": "iSearch",
|
|
913
|
-
"C-r": "iSearchBackwards",
|
|
914
|
-
|
|
915
|
-
"M-C-s": "findnext",
|
|
916
|
-
"M-C-r": "findprevious",
|
|
917
|
-
"S-M-5": "replace",
|
|
918
|
-
"Backspace": "backspace",
|
|
919
|
-
"Delete|C-d": "del",
|
|
920
|
-
"Return|C-m": {command: "insertstring", args: "\n"}, // "newline"
|
|
921
|
-
"C-o": "splitline",
|
|
922
|
-
|
|
923
|
-
"M-d|C-Delete": {command: "killWord", args: "right"},
|
|
924
|
-
"C-Backspace|M-Backspace|M-Delete": {command: "killWord", args: "left"},
|
|
925
|
-
"C-k": "killLine",
|
|
926
|
-
|
|
927
|
-
"C-y|S-Delete": "yank",
|
|
928
|
-
"M-y": "yankRotate",
|
|
929
|
-
"C-g": "keyboardQuit",
|
|
930
|
-
|
|
931
|
-
"C-w|C-S-W": "killRegion",
|
|
932
|
-
"M-w": "killRingSave",
|
|
933
|
-
"C-Space": "setMark",
|
|
934
|
-
"C-x C-x": "exchangePointAndMark",
|
|
935
|
-
|
|
936
|
-
"C-t": "transposeletters",
|
|
937
|
-
"M-u": "touppercase", // Doesn't work
|
|
938
|
-
"M-l": "tolowercase",
|
|
939
|
-
"M-/": "autocomplete", // Doesn't work
|
|
940
|
-
"C-u": "universalArgument",
|
|
941
|
-
|
|
942
|
-
"M-;": "togglecomment",
|
|
943
|
-
|
|
944
|
-
"C-/|C-x u|S-C--|C-z": "undo",
|
|
945
|
-
"S-C-/|S-C-x u|C--|S-C-z": "redo", // infinite undo?
|
|
946
|
-
"C-x r": "selectRectangularRegion",
|
|
947
|
-
"M-x": {command: "focusCommandLine", args: "M-x "}
|
|
948
|
-
};
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
exports.handler.bindKeys(exports.emacsKeys);
|
|
952
|
-
|
|
953
|
-
exports.handler.addCommands({
|
|
954
|
-
recenterTopBottom: function(editor) {
|
|
955
|
-
var renderer = editor.renderer;
|
|
956
|
-
var pos = renderer.$cursorLayer.getPixelPosition();
|
|
957
|
-
var h = renderer.$size.scrollerHeight - renderer.lineHeight;
|
|
958
|
-
var scrollTop = renderer.scrollTop;
|
|
959
|
-
if (Math.abs(pos.top - scrollTop) < 2) {
|
|
960
|
-
scrollTop = pos.top - h;
|
|
961
|
-
} else if (Math.abs(pos.top - scrollTop - h * 0.5) < 2) {
|
|
962
|
-
scrollTop = pos.top;
|
|
963
|
-
} else {
|
|
964
|
-
scrollTop = pos.top - h * 0.5;
|
|
965
|
-
}
|
|
966
|
-
editor.session.setScrollTop(scrollTop);
|
|
967
|
-
},
|
|
968
|
-
selectRectangularRegion: function(editor) {
|
|
969
|
-
editor.multiSelect.toggleBlockSelection();
|
|
970
|
-
},
|
|
971
|
-
setMark: {
|
|
972
|
-
exec: function(editor, args) {
|
|
973
|
-
|
|
974
|
-
if (args && args.count) {
|
|
975
|
-
if (editor.inMultiSelectMode) editor.forEachSelection(moveToMark);
|
|
976
|
-
else moveToMark();
|
|
977
|
-
moveToMark();
|
|
978
|
-
return;
|
|
979
|
-
}
|
|
980
|
-
|
|
981
|
-
var mark = editor.emacsMark(),
|
|
982
|
-
ranges = editor.selection.getAllRanges(),
|
|
983
|
-
rangePositions = ranges.map(function(r) { return {row: r.start.row, column: r.start.column}; }),
|
|
984
|
-
transientMarkModeActive = true,
|
|
985
|
-
hasNoSelection = ranges.every(function(range) { return range.isEmpty(); });
|
|
986
|
-
if (transientMarkModeActive && (mark || !hasNoSelection)) {
|
|
987
|
-
if (editor.inMultiSelectMode) editor.forEachSelection({exec: editor.clearSelection.bind(editor)});
|
|
988
|
-
else editor.clearSelection();
|
|
989
|
-
if (mark) editor.pushEmacsMark(null);
|
|
990
|
-
return;
|
|
991
|
-
}
|
|
992
|
-
|
|
993
|
-
if (!mark) {
|
|
994
|
-
rangePositions.forEach(function(pos) { editor.pushEmacsMark(pos); });
|
|
995
|
-
editor.setEmacsMark(rangePositions[rangePositions.length-1]);
|
|
996
|
-
return;
|
|
997
|
-
}
|
|
998
|
-
|
|
999
|
-
function moveToMark() {
|
|
1000
|
-
var mark = editor.popEmacsMark();
|
|
1001
|
-
mark && editor.moveCursorToPosition(mark);
|
|
1002
|
-
}
|
|
1003
|
-
|
|
1004
|
-
},
|
|
1005
|
-
readOnly: true,
|
|
1006
|
-
handlesCount: true
|
|
1007
|
-
},
|
|
1008
|
-
exchangePointAndMark: {
|
|
1009
|
-
exec: function exchangePointAndMark$exec(editor, args) {
|
|
1010
|
-
var sel = editor.selection;
|
|
1011
|
-
if (!args.count && !sel.isEmpty()) { // just invert selection
|
|
1012
|
-
sel.setSelectionRange(sel.getRange(), !sel.isBackwards());
|
|
1013
|
-
return;
|
|
1014
|
-
}
|
|
1015
|
-
|
|
1016
|
-
if (args.count) { // replace mark and point
|
|
1017
|
-
var pos = {row: sel.lead.row, column: sel.lead.column};
|
|
1018
|
-
sel.clearSelection();
|
|
1019
|
-
sel.moveCursorToPosition(editor.emacsMarkForSelection(pos));
|
|
1020
|
-
} else { // create selection to last mark
|
|
1021
|
-
sel.selectToPosition(editor.emacsMarkForSelection());
|
|
1022
|
-
}
|
|
1023
|
-
},
|
|
1024
|
-
readOnly: true,
|
|
1025
|
-
handlesCount: true,
|
|
1026
|
-
multiSelectAction: "forEach"
|
|
1027
|
-
},
|
|
1028
|
-
killWord: {
|
|
1029
|
-
exec: function(editor, dir) {
|
|
1030
|
-
editor.clearSelection();
|
|
1031
|
-
if (dir == "left")
|
|
1032
|
-
editor.selection.selectWordLeft();
|
|
1033
|
-
else
|
|
1034
|
-
editor.selection.selectWordRight();
|
|
1035
|
-
|
|
1036
|
-
var range = editor.getSelectionRange();
|
|
1037
|
-
var text = editor.session.getTextRange(range);
|
|
1038
|
-
exports.killRing.add(text);
|
|
1039
|
-
|
|
1040
|
-
editor.session.remove(range);
|
|
1041
|
-
editor.clearSelection();
|
|
1042
|
-
},
|
|
1043
|
-
multiSelectAction: "forEach"
|
|
1044
|
-
},
|
|
1045
|
-
killLine: function(editor) {
|
|
1046
|
-
editor.pushEmacsMark(null);
|
|
1047
|
-
editor.clearSelection();
|
|
1048
|
-
var range = editor.getSelectionRange();
|
|
1049
|
-
var line = editor.session.getLine(range.start.row);
|
|
1050
|
-
range.end.column = line.length;
|
|
1051
|
-
line = line.substr(range.start.column);
|
|
1052
|
-
|
|
1053
|
-
var foldLine = editor.session.getFoldLine(range.start.row);
|
|
1054
|
-
if (foldLine && range.end.row != foldLine.end.row) {
|
|
1055
|
-
range.end.row = foldLine.end.row;
|
|
1056
|
-
line = "x";
|
|
1057
|
-
}
|
|
1058
|
-
if (/^\s*$/.test(line)) {
|
|
1059
|
-
range.end.row++;
|
|
1060
|
-
line = editor.session.getLine(range.end.row);
|
|
1061
|
-
range.end.column = /^\s*$/.test(line) ? line.length : 0;
|
|
1062
|
-
}
|
|
1063
|
-
var text = editor.session.getTextRange(range);
|
|
1064
|
-
if (editor.prevOp.command == this)
|
|
1065
|
-
exports.killRing.append(text);
|
|
1066
|
-
else
|
|
1067
|
-
exports.killRing.add(text);
|
|
1068
|
-
|
|
1069
|
-
editor.session.remove(range);
|
|
1070
|
-
editor.clearSelection();
|
|
1071
|
-
},
|
|
1072
|
-
yank: function(editor) {
|
|
1073
|
-
editor.onPaste(exports.killRing.get() || '');
|
|
1074
|
-
editor.keyBinding.$data.lastCommand = "yank";
|
|
1075
|
-
},
|
|
1076
|
-
yankRotate: function(editor) {
|
|
1077
|
-
if (editor.keyBinding.$data.lastCommand != "yank")
|
|
1078
|
-
return;
|
|
1079
|
-
editor.undo();
|
|
1080
|
-
editor.session.$emacsMarkRing.pop(); // also undo recording mark
|
|
1081
|
-
editor.onPaste(exports.killRing.rotate());
|
|
1082
|
-
editor.keyBinding.$data.lastCommand = "yank";
|
|
1083
|
-
},
|
|
1084
|
-
killRegion: {
|
|
1085
|
-
exec: function(editor) {
|
|
1086
|
-
exports.killRing.add(editor.getCopyText());
|
|
1087
|
-
editor.commands.byName.cut.exec(editor);
|
|
1088
|
-
editor.setEmacsMark(null);
|
|
1089
|
-
},
|
|
1090
|
-
readOnly: true,
|
|
1091
|
-
multiSelectAction: "forEach"
|
|
1092
|
-
},
|
|
1093
|
-
killRingSave: {
|
|
1094
|
-
exec: function(editor) {
|
|
1095
|
-
|
|
1096
|
-
editor.$handlesEmacsOnCopy = true;
|
|
1097
|
-
var marks = editor.session.$emacsMarkRing.slice(),
|
|
1098
|
-
deselectedMarks = [];
|
|
1099
|
-
exports.killRing.add(editor.getCopyText());
|
|
1100
|
-
|
|
1101
|
-
setTimeout(function() {
|
|
1102
|
-
function deselect() {
|
|
1103
|
-
var sel = editor.selection, range = sel.getRange(),
|
|
1104
|
-
pos = sel.isBackwards() ? range.end : range.start;
|
|
1105
|
-
deselectedMarks.push({row: pos.row, column: pos.column});
|
|
1106
|
-
sel.clearSelection();
|
|
1107
|
-
}
|
|
1108
|
-
editor.$handlesEmacsOnCopy = false;
|
|
1109
|
-
if (editor.inMultiSelectMode) editor.forEachSelection({exec: deselect});
|
|
1110
|
-
else deselect();
|
|
1111
|
-
editor.setEmacsMark(null);
|
|
1112
|
-
editor.session.$emacsMarkRing = marks.concat(deselectedMarks.reverse());
|
|
1113
|
-
}, 0);
|
|
1114
|
-
},
|
|
1115
|
-
readOnly: true
|
|
1116
|
-
},
|
|
1117
|
-
keyboardQuit: function(editor) {
|
|
1118
|
-
editor.selection.clearSelection();
|
|
1119
|
-
editor.setEmacsMark(null);
|
|
1120
|
-
editor.keyBinding.$data.count = null;
|
|
1121
|
-
},
|
|
1122
|
-
focusCommandLine: function(editor, arg) {
|
|
1123
|
-
if (editor.showCommandLine)
|
|
1124
|
-
editor.showCommandLine(arg);
|
|
1125
|
-
}
|
|
1126
|
-
});
|
|
1127
|
-
|
|
1128
|
-
exports.handler.addCommands(iSearchCommandModule.iSearchStartCommands);
|
|
1129
|
-
|
|
1130
|
-
var commands = exports.handler.commands;
|
|
1131
|
-
commands.yank.isYank = true;
|
|
1132
|
-
commands.yankRotate.isYank = true;
|
|
1133
|
-
|
|
1134
|
-
exports.killRing = {
|
|
1135
|
-
$data: [],
|
|
1136
|
-
add: function(str) {
|
|
1137
|
-
str && this.$data.push(str);
|
|
1138
|
-
if (this.$data.length > 30)
|
|
1139
|
-
this.$data.shift();
|
|
1140
|
-
},
|
|
1141
|
-
append: function(str) {
|
|
1142
|
-
var idx = this.$data.length - 1;
|
|
1143
|
-
var text = this.$data[idx] || "";
|
|
1144
|
-
if (str) text += str;
|
|
1145
|
-
if (text) this.$data[idx] = text;
|
|
1146
|
-
},
|
|
1147
|
-
get: function(n) {
|
|
1148
|
-
n = n || 1;
|
|
1149
|
-
return this.$data.slice(this.$data.length-n, this.$data.length).reverse().join('\n');
|
|
1150
|
-
},
|
|
1151
|
-
pop: function() {
|
|
1152
|
-
if (this.$data.length > 1)
|
|
1153
|
-
this.$data.pop();
|
|
1154
|
-
return this.get();
|
|
1155
|
-
},
|
|
1156
|
-
rotate: function() {
|
|
1157
|
-
this.$data.unshift(this.$data.pop());
|
|
1158
|
-
return this.get();
|
|
1159
|
-
}
|
|
1160
|
-
};
|
|
1161
|
-
|
|
1162
|
-
}); (function() {
|
|
1163
|
-
ace.require(["ace/keyboard/emacs"], function(m) {
|
|
1164
|
-
if (typeof module == "object" && typeof exports == "object" && module) {
|
|
1165
|
-
module.exports = m;
|
|
1166
|
-
}
|
|
1167
|
-
});
|
|
1168
|
-
})();
|
|
1169
|
-
|
|
1
|
+
ace.define("ace/occur",["require","exports","module","ace/lib/oop","ace/range","ace/search","ace/edit_session","ace/search_highlight","ace/lib/dom"],(function(e,n,t){"use strict";var a=e("./lib/oop"),o=(e("./range").Range,e("./search").Search),r=e("./edit_session").EditSession,i=e("./search_highlight").SearchHighlight;function s(){}a.inherits(s,o),function(){this.enter=function(e,n){if(!n.needle)return!1;var t=e.getCursorPosition();this.displayOccurContent(e,n);var a=this.originalToOccurPosition(e.session,t);return e.moveCursorToPosition(a),!0},this.exit=function(e,n){var t=n.translatePosition&&e.getCursorPosition(),a=t&&this.occurToOriginalPosition(e.session,t);return this.displayOriginalContent(e),a&&e.moveCursorToPosition(a),!0},this.highlight=function(e,n){(e.$occurHighlight=e.$occurHighlight||e.addDynamicMarker(new i(null,"ace_occur-highlight","text"))).setRegexp(n),e._emit("changeBackMarker")},this.displayOccurContent=function(e,n){this.$originalSession=e.session;var t=this.matchingLines(e.session,n),a=t.map((function(e){return e.content})),o=new r(a.join("\n"));o.$occur=this,o.$occurMatchingLines=t,e.setSession(o),this.$useEmacsStyleLineStart=this.$originalSession.$useEmacsStyleLineStart,o.$useEmacsStyleLineStart=this.$useEmacsStyleLineStart,this.highlight(o,n.re),o._emit("changeBackMarker")},this.displayOriginalContent=function(e){e.setSession(this.$originalSession),this.$originalSession.$useEmacsStyleLineStart=this.$useEmacsStyleLineStart},this.originalToOccurPosition=function(e,n){var t=e.$occurMatchingLines,a={row:0,column:0};if(!t)return a;for(var o=0;o<t.length;o++)if(t[o].row===n.row)return{row:o,column:n.column};return a},this.occurToOriginalPosition=function(e,n){var t=e.$occurMatchingLines;return t&&t[n.row]?{row:t[n.row].row,column:n.column}:n},this.matchingLines=function(e,n){if(n=a.mixin({},n),!e||!n.needle)return[];var t=new o;return t.set(n),t.findAll(e).reduce((function(n,t){var a=t.start.row,o=n[n.length-1];return o&&o.row===a?n:n.concat({row:a,content:e.getLine(a)})}),[])}}.call(s.prototype),e("./lib/dom").importCssString(".ace_occur-highlight {\n border-radius: 4px;\n background-color: rgba(87, 255, 8, 0.25);\n position: absolute;\n z-index: 4;\n box-sizing: border-box;\n box-shadow: 0 0 4px rgb(91, 255, 50);\n}\n.ace_dark .ace_occur-highlight {\n background-color: rgb(80, 140, 85);\n box-shadow: 0 0 4px rgb(60, 120, 70);\n}\n","incremental-occur-highlighting",!1),n.Occur=s})),ace.define("ace/commands/occur_commands",["require","exports","module","ace/config","ace/occur","ace/keyboard/hash_handler","ace/lib/oop"],(function(e,n,t){e("../config");var a=e("../occur").Occur,o={name:"occur",exec:function(e,n){var t=!!e.session.$occur;(new a).enter(e,n)&&!t&&s.installIn(e)},readOnly:!0},r=[{name:"occurexit",bindKey:"esc|Ctrl-G",exec:function(e){var n=e.session.$occur;n&&(n.exit(e,{}),e.session.$occur||s.uninstallFrom(e))},readOnly:!0},{name:"occuraccept",bindKey:"enter",exec:function(e){var n=e.session.$occur;n&&(n.exit(e,{translatePosition:!0}),e.session.$occur||s.uninstallFrom(e))},readOnly:!0}],i=e("../keyboard/hash_handler").HashHandler;function s(){}e("../lib/oop").inherits(s,i),function(){this.isOccurHandler=!0,this.attach=function(e){i.call(this,r,e.commands.platform),this.$editor=e};var e=this.handleKeyboard;this.handleKeyboard=function(n,t,a,o){var r=e.call(this,n,t,a,o);return r&&r.command?r:void 0}}.call(s.prototype),s.installIn=function(e){var n=new this;e.keyBinding.addKeyboardHandler(n),e.commands.addCommands(r)},s.uninstallFrom=function(e){e.commands.removeCommands(r);var n=e.getKeyboardHandler();n.isOccurHandler&&e.keyBinding.removeKeyboardHandler(n)},n.occurStartCommand=o})),ace.define("ace/commands/incremental_search_commands",["require","exports","module","ace/config","ace/lib/oop","ace/keyboard/hash_handler","ace/commands/occur_commands"],(function(e,n,t){var a=e("../config"),o=e("../lib/oop"),r=e("../keyboard/hash_handler").HashHandler,i=e("./occur_commands").occurStartCommand;function s(e){this.$iSearch=e}n.iSearchStartCommands=[{name:"iSearch",bindKey:{win:"Ctrl-F",mac:"Command-F"},exec:function(e,n){a.loadModule(["core","ace/incremental_search"],(function(t){var a=t.iSearch=t.iSearch||new t.IncrementalSearch;a.activate(e,n.backwards),n.jumpToFirstMatch&&a.next(n)}))},readOnly:!0},{name:"iSearchBackwards",exec:function(e,n){e.execCommand("iSearch",{backwards:!0})},readOnly:!0},{name:"iSearchAndGo",bindKey:{win:"Ctrl-K",mac:"Command-G"},exec:function(e,n){e.execCommand("iSearch",{jumpToFirstMatch:!0,useCurrentOrPrevSearch:!0})},readOnly:!0},{name:"iSearchBackwardsAndGo",bindKey:{win:"Ctrl-Shift-K",mac:"Command-Shift-G"},exec:function(e){e.execCommand("iSearch",{jumpToFirstMatch:!0,backwards:!0,useCurrentOrPrevSearch:!0})},readOnly:!0}],n.iSearchCommands=[{name:"restartSearch",bindKey:{win:"Ctrl-F",mac:"Command-F"},exec:function(e){e.cancelSearch(!0)}},{name:"searchForward",bindKey:{win:"Ctrl-S|Ctrl-K",mac:"Ctrl-S|Command-G"},exec:function(e,n){n.useCurrentOrPrevSearch=!0,e.next(n)}},{name:"searchBackward",bindKey:{win:"Ctrl-R|Ctrl-Shift-K",mac:"Ctrl-R|Command-Shift-G"},exec:function(e,n){n.useCurrentOrPrevSearch=!0,n.backwards=!0,e.next(n)}},{name:"extendSearchTerm",exec:function(e,n){e.addString(n)}},{name:"extendSearchTermSpace",bindKey:"space",exec:function(e){e.addString(" ")}},{name:"shrinkSearchTerm",bindKey:"backspace",exec:function(e){e.removeChar()}},{name:"confirmSearch",bindKey:"return",exec:function(e){e.deactivate()}},{name:"cancelSearch",bindKey:"esc|Ctrl-G",exec:function(e){e.deactivate(!0)}},{name:"occurisearch",bindKey:"Ctrl-O",exec:function(e){var n=o.mixin({},e.$options);e.deactivate(),i.exec(e.$editor,n)}},{name:"yankNextWord",bindKey:"Ctrl-w",exec:function(e){var n=e.$editor,t=n.selection.getRangeOfMovements((function(e){e.moveCursorWordRight()})),a=n.session.getTextRange(t);e.addString(a)}},{name:"yankNextChar",bindKey:"Ctrl-Alt-y",exec:function(e){var n=e.$editor,t=n.selection.getRangeOfMovements((function(e){e.moveCursorRight()})),a=n.session.getTextRange(t);e.addString(a)}},{name:"recenterTopBottom",bindKey:"Ctrl-l",exec:function(e){e.$editor.execCommand("recenterTopBottom")}},{name:"selectAllMatches",bindKey:"Ctrl-space",exec:function(e){var n=e.$editor,t=n.session.$isearchHighlight,a=t&&t.cache?t.cache.reduce((function(e,n){return e.concat(n||[])}),[]):[];e.deactivate(!1),a.forEach(n.selection.addRange.bind(n.selection))}},{name:"searchAsRegExp",bindKey:"Alt-r",exec:function(e){e.convertNeedleToRegExp()}}].map((function(e){return e.readOnly=!0,e.isIncrementalSearchCommand=!0,e.scrollIntoView="animate-cursor",e})),o.inherits(s,r),function(){this.attach=function(e){var t=this.$iSearch;r.call(this,n.iSearchCommands,e.commands.platform),this.$commandExecHandler=e.commands.on("exec",(function(n){if(!n.command.isIncrementalSearchCommand)return t.deactivate();n.stopPropagation(),n.preventDefault();var a=e.session.getScrollTop(),o=n.command.exec(t,n.args||{});return e.renderer.scrollCursorIntoView(null,.5),e.renderer.animateScrolling(a),o}))},this.detach=function(e){this.$commandExecHandler&&(e.commands.off("exec",this.$commandExecHandler),delete this.$commandExecHandler)};var e=this.handleKeyboard;this.handleKeyboard=function(n,t,a,o){if((1===t||8===t)&&"v"===a||1===t&&"y"===a)return null;var r=e.call(this,n,t,a,o);if(r&&r.command)return r;if(-1==t){var i=this.commands.extendSearchTerm;if(i)return{command:i,args:a}}return!1}}.call(s.prototype),n.IncrementalSearchKeyboardHandler=s})),ace.define("ace/incremental_search",["require","exports","module","ace/lib/oop","ace/range","ace/search","ace/search_highlight","ace/commands/incremental_search_commands","ace/lib/dom","ace/commands/command_manager","ace/editor","ace/config"],(function(e,n,t){"use strict";var a=e("./lib/oop"),o=e("./range").Range,r=e("./search").Search,i=e("./search_highlight").SearchHighlight,s=e("./commands/incremental_search_commands"),c=s.IncrementalSearchKeyboardHandler;function l(){this.$options={wrap:!1,skipCurrent:!1},this.$keyboardHandler=new c(this)}function d(e){return e instanceof RegExp}function h(e){var n=String(e),t=n.indexOf("/"),a=n.lastIndexOf("/");return{expression:n.slice(t+1,a),flags:n.slice(a+1)}}function m(e,n){try{return new RegExp(e,n)}catch(n){return e}}function u(e){return m(e.expression,e.flags)}a.inherits(l,r),function(){this.activate=function(e,n){this.$editor=e,this.$startPos=this.$currentPos=e.getCursorPosition(),this.$options.needle="",this.$options.backwards=n,e.keyBinding.addKeyboardHandler(this.$keyboardHandler),this.$originalEditorOnPaste=e.onPaste,e.onPaste=this.onPaste.bind(this),this.$mousedownHandler=e.on("mousedown",this.onMouseDown.bind(this)),this.selectionFix(e),this.statusMessage(!0)},this.deactivate=function(e){this.cancelSearch(e);var n=this.$editor;n.keyBinding.removeKeyboardHandler(this.$keyboardHandler),this.$mousedownHandler&&(n.off("mousedown",this.$mousedownHandler),delete this.$mousedownHandler),n.onPaste=this.$originalEditorOnPaste,this.message("")},this.selectionFix=function(e){e.selection.isEmpty()&&!e.session.$emacsMark&&e.clearSelection()},this.highlight=function(e){var n=this.$editor.session;(n.$isearchHighlight=n.$isearchHighlight||n.addDynamicMarker(new i(null,"ace_isearch-result","text"))).setRegexp(e),n._emit("changeBackMarker")},this.cancelSearch=function(e){var n=this.$editor;return this.$prevNeedle=this.$options.needle,this.$options.needle="",e?(n.moveCursorToPosition(this.$startPos),this.$currentPos=this.$startPos):n.pushEmacsMark&&n.pushEmacsMark(this.$startPos,!1),this.highlight(null),o.fromPoints(this.$currentPos,this.$currentPos)},this.highlightAndFindWithNeedle=function(e,n){if(!this.$editor)return null;var t=this.$options;if(n&&(t.needle=n.call(this,t.needle||"")||""),0===t.needle.length)return this.statusMessage(!0),this.cancelSearch(!0);t.start=this.$currentPos;var a=this.$editor.session,r=this.find(a),i=this.$editor.emacsMark?!!this.$editor.emacsMark():!this.$editor.selection.isEmpty();return r&&(t.backwards&&(r=o.fromPoints(r.end,r.start)),this.$editor.selection.setRange(o.fromPoints(i?this.$startPos:r.end,r.end)),e&&(this.$currentPos=r.end),this.highlight(t.re)),this.statusMessage(r),r},this.addString=function(e){return this.highlightAndFindWithNeedle(!1,(function(n){if(!d(n))return n+e;var t=h(n);return t.expression+=e,u(t)}))},this.removeChar=function(e){return this.highlightAndFindWithNeedle(!1,(function(e){if(!d(e))return e.substring(0,e.length-1);var n=h(e);return n.expression=n.expression.substring(0,n.expression.length-1),u(n)}))},this.next=function(e){return e=e||{},this.$options.backwards=!!e.backwards,this.$currentPos=this.$editor.getCursorPosition(),this.highlightAndFindWithNeedle(!0,(function(n){return e.useCurrentOrPrevSearch&&0===n.length?this.$prevNeedle||"":n}))},this.onMouseDown=function(e){return this.deactivate(),!0},this.onPaste=function(e){this.addString(e)},this.convertNeedleToRegExp=function(){return this.highlightAndFindWithNeedle(!1,(function(e){return d(e)?e:m(e,"ig")}))},this.convertNeedleToString=function(){return this.highlightAndFindWithNeedle(!1,(function(e){return d(e)?h(e).expression:e}))},this.statusMessage=function(e){var n=this.$options,t="";t+=n.backwards?"reverse-":"",t+="isearch: "+n.needle,t+=e?"":" (not found)",this.message(t)},this.message=function(e){this.$editor.showCommandLine&&(this.$editor.showCommandLine(e),this.$editor.focus())}}.call(l.prototype),n.IncrementalSearch=l,e("./lib/dom").importCssString(".ace_marker-layer .ace_isearch-result { position: absolute; z-index: 6; box-sizing: border-box;}div.ace_isearch-result { border-radius: 4px; background-color: rgba(255, 200, 0, 0.5); box-shadow: 0 0 4px rgb(255, 200, 0);}.ace_dark div.ace_isearch-result { background-color: rgb(100, 110, 160); box-shadow: 0 0 4px rgb(80, 90, 140);}","incremental-search-highlighting",!1);var g=e("./commands/command_manager");(function(){this.setupIncrementalSearch=function(e,n){if(this.usesIncrementalSearch!=n){this.usesIncrementalSearch=n;var t=s.iSearchStartCommands;this[n?"addCommands":"removeCommands"](t)}}}).call(g.CommandManager.prototype);var f=e("./editor").Editor;e("./config").defineOptions(f.prototype,"editor",{useIncrementalSearch:{set:function(e){this.keyBinding.$handlers.forEach((function(n){n.setupIncrementalSearch&&n.setupIncrementalSearch(this,e)})),this._emit("incrementalSearchSettingChanged",{isEnabled:e})}}})})),ace.define("ace/keyboard/emacs",["require","exports","module","ace/lib/dom","ace/incremental_search","ace/commands/incremental_search_commands","ace/keyboard/hash_handler","ace/lib/keys"],(function(e,n,t){"use strict";var a=e("../lib/dom");e("../incremental_search");var o=e("../commands/incremental_search_commands"),r=e("./hash_handler").HashHandler;n.handler=new r,n.handler.isEmacs=!0,n.handler.$id="ace/keyboard/emacs";var i,s,c=!1;n.handler.attach=function(e){c||(c=!0,a.importCssString(" .emacs-mode .ace_cursor{ border: 1px rgba(50,250,50,0.8) solid!important; box-sizing: border-box!important; background-color: rgba(0,250,0,0.9); opacity: 0.5; } .emacs-mode .ace_hidden-cursors .ace_cursor{ opacity: 1; background-color: transparent; } .emacs-mode .ace_overwrite-cursors .ace_cursor { opacity: 1; background-color: transparent; border-width: 0 0 2px 2px !important; } .emacs-mode .ace_text-layer { z-index: 4 } .emacs-mode .ace_cursor-layer { z-index: 2 }","emacsMode")),i=e.session.$selectLongWords,e.session.$selectLongWords=!0,s=e.session.$useEmacsStyleLineStart,e.session.$useEmacsStyleLineStart=!0,e.session.$emacsMark=null,e.session.$emacsMarkRing=e.session.$emacsMarkRing||[],e.emacsMark=function(){return this.session.$emacsMark},e.setEmacsMark=function(e){this.session.$emacsMark=e},e.pushEmacsMark=function(e,n){var t=this.session.$emacsMark;t&&this.session.$emacsMarkRing.push(t),!e||n?this.setEmacsMark(e):this.session.$emacsMarkRing.push(e)},e.popEmacsMark=function(){var e=this.emacsMark();return e?(this.setEmacsMark(null),e):this.session.$emacsMarkRing.pop()},e.getLastEmacsMark=function(e){return this.session.$emacsMark||this.session.$emacsMarkRing.slice(-1)[0]},e.emacsMarkForSelection=function(e){var n=this.selection,t=this.multiSelect?this.multiSelect.getAllRanges().length:1,a=n.index||0,o=this.session.$emacsMarkRing,r=o.length-(t-a),i=o[r]||n.anchor;return e&&o.splice(r,1,"row"in e&&"column"in e?e:void 0),i},e.on("click",d),e.on("changeSession",l),e.renderer.$blockCursor=!0,e.setStyle("emacs-mode"),e.commands.addCommands(u),n.handler.platform=e.commands.platform,e.$emacsModeHandler=this,e.on("copy",this.onCopy),e.on("paste",this.onPaste)},n.handler.detach=function(e){e.renderer.$blockCursor=!1,e.session.$selectLongWords=i,e.session.$useEmacsStyleLineStart=s,e.off("click",d),e.off("changeSession",l),e.unsetStyle("emacs-mode"),e.commands.removeCommands(u),e.off("copy",this.onCopy),e.off("paste",this.onPaste),e.$emacsModeHandler=null};var l=function(e){e.oldSession&&(e.oldSession.$selectLongWords=i,e.oldSession.$useEmacsStyleLineStart=s),i=e.session.$selectLongWords,e.session.$selectLongWords=!0,s=e.session.$useEmacsStyleLineStart,e.session.$useEmacsStyleLineStart=!0,e.session.hasOwnProperty("$emacsMark")||(e.session.$emacsMark=null),e.session.hasOwnProperty("$emacsMarkRing")||(e.session.$emacsMarkRing=[])},d=function(e){e.editor.session.$emacsMark=null},h=e("../lib/keys").KEY_MODS,m={C:"ctrl",S:"shift",M:"alt",CMD:"command"};["C-S-M-CMD","S-M-CMD","C-M-CMD","C-S-CMD","C-S-M","M-CMD","S-CMD","S-M","C-CMD","C-M","C-S","CMD","M","S","C"].forEach((function(e){var n=0;e.split("-").forEach((function(e){n|=h[m[e]]})),m[n]=e.toLowerCase()+"-"})),n.handler.onCopy=function(e,t){t.$handlesEmacsOnCopy||(t.$handlesEmacsOnCopy=!0,n.handler.commands.killRingSave.exec(t),t.$handlesEmacsOnCopy=!1)},n.handler.onPaste=function(e,n){n.pushEmacsMark(n.getCursorPosition())},n.handler.bindKey=function(e,n){if("object"==typeof e&&(e=e[this.platform]),e){var t=this.commandKeyBinding;e.split("|").forEach((function(e){e=e.toLowerCase(),t[e]=n,e.split(" ").slice(0,-1).reduce((function(e,n,t){var a=e[t-1]?e[t-1]+" ":"";return e.concat([a+n])}),[]).forEach((function(e){t[e]||(t[e]="null")}))}),this)}},n.handler.getStatusText=function(e,n){var t="";return n.count&&(t+=n.count),n.keyChain&&(t+=" "+n.keyChain),t},n.handler.handleKeyboard=function(e,n,t,a){if(-1!==a){var o=e.editor;if(o._signal("changeStatus"),-1==n&&(o.pushEmacsMark(),e.count)){var r=new Array(e.count+1).join(t);return e.count=null,{command:"insertstring",args:r}}var i=m[n];if("c-"==i||e.count)if("number"==typeof(l=parseInt(t[t.length-1]))&&!isNaN(l))return e.count=Math.max(e.count,0)||0,e.count=10*e.count+l,{command:"null"};i&&(t=i+t),e.keyChain&&(t=e.keyChain+=" "+t);var s=this.commandKeyBinding[t];if(e.keyChain="null"==s?t:"",s){if("null"===s)return{command:"null"};if("universalArgument"===s)return e.count=-4,{command:"null"};var c;if("string"!=typeof s&&(c=s.args,s.command&&(s=s.command),"goorselect"===s&&(s=o.emacsMark()?c[1]:c[0],c=null)),"string"!=typeof s||("insertstring"!==s&&"splitline"!==s&&"togglecomment"!==s||o.pushEmacsMark(),s=this.commands[s]||o.commands.commands[s])){if(s.readOnly||s.isYank||(e.lastCommand=null),!s.readOnly&&o.emacsMark()&&o.setEmacsMark(null),e.count){var l=e.count;if(e.count=0,!s||!s.handlesCount)return{args:c,command:{exec:function(e,n){for(var t=0;t<l;t++)s.exec(e,n)},multiSelectAction:s.multiSelectAction}};c||(c={}),"object"==typeof c&&(c.count=l)}return{command:s,args:c}}}}},n.emacsKeys={"Up|C-p":{command:"goorselect",args:["golineup","selectup"]},"Down|C-n":{command:"goorselect",args:["golinedown","selectdown"]},"Left|C-b":{command:"goorselect",args:["gotoleft","selectleft"]},"Right|C-f":{command:"goorselect",args:["gotoright","selectright"]},"C-Left|M-b":{command:"goorselect",args:["gotowordleft","selectwordleft"]},"C-Right|M-f":{command:"goorselect",args:["gotowordright","selectwordright"]},"Home|C-a":{command:"goorselect",args:["gotolinestart","selecttolinestart"]},"End|C-e":{command:"goorselect",args:["gotolineend","selecttolineend"]},"C-Home|S-M-,":{command:"goorselect",args:["gotostart","selecttostart"]},"C-End|S-M-.":{command:"goorselect",args:["gotoend","selecttoend"]},"S-Up|S-C-p":"selectup","S-Down|S-C-n":"selectdown","S-Left|S-C-b":"selectleft","S-Right|S-C-f":"selectright","S-C-Left|S-M-b":"selectwordleft","S-C-Right|S-M-f":"selectwordright","S-Home|S-C-a":"selecttolinestart","S-End|S-C-e":"selecttolineend","S-C-Home":"selecttostart","S-C-End":"selecttoend","C-l":"recenterTopBottom","M-s":"centerselection","M-g":"gotoline","C-x C-p":"selectall","C-Down":{command:"goorselect",args:["gotopagedown","selectpagedown"]},"C-Up":{command:"goorselect",args:["gotopageup","selectpageup"]},"PageDown|C-v":{command:"goorselect",args:["gotopagedown","selectpagedown"]},"PageUp|M-v":{command:"goorselect",args:["gotopageup","selectpageup"]},"S-C-Down":"selectpagedown","S-C-Up":"selectpageup","C-s":"iSearch","C-r":"iSearchBackwards","M-C-s":"findnext","M-C-r":"findprevious","S-M-5":"replace",Backspace:"backspace","Delete|C-d":"del","Return|C-m":{command:"insertstring",args:"\n"},"C-o":"splitline","M-d|C-Delete":{command:"killWord",args:"right"},"C-Backspace|M-Backspace|M-Delete":{command:"killWord",args:"left"},"C-k":"killLine","C-y|S-Delete":"yank","M-y":"yankRotate","C-g":"keyboardQuit","C-w|C-S-W":"killRegion","M-w":"killRingSave","C-Space":"setMark","C-x C-x":"exchangePointAndMark","C-t":"transposeletters","M-u":"touppercase","M-l":"tolowercase","M-/":"autocomplete","C-u":"universalArgument","M-;":"togglecomment","C-/|C-x u|S-C--|C-z":"undo","S-C-/|S-C-x u|C--|S-C-z":"redo","C-x r":"selectRectangularRegion","M-x":{command:"focusCommandLine",args:"M-x "}},n.handler.bindKeys(n.emacsKeys),n.handler.addCommands({recenterTopBottom:function(e){var n=e.renderer,t=n.$cursorLayer.getPixelPosition(),a=n.$size.scrollerHeight-n.lineHeight,o=n.scrollTop;o=Math.abs(t.top-o)<2?t.top-a:Math.abs(t.top-o-.5*a)<2?t.top:t.top-.5*a,e.session.setScrollTop(o)},selectRectangularRegion:function(e){e.multiSelect.toggleBlockSelection()},setMark:{exec:function(e,n){if(n&&n.count)return e.inMultiSelectMode?e.forEachSelection(i):i(),void i();var t=e.emacsMark(),a=e.selection.getAllRanges(),o=a.map((function(e){return{row:e.start.row,column:e.start.column}})),r=a.every((function(e){return e.isEmpty()}));if(t||!r)return e.inMultiSelectMode?e.forEachSelection({exec:e.clearSelection.bind(e)}):e.clearSelection(),void(t&&e.pushEmacsMark(null));if(!t)return o.forEach((function(n){e.pushEmacsMark(n)})),void e.setEmacsMark(o[o.length-1]);function i(){var n=e.popEmacsMark();n&&e.moveCursorToPosition(n)}},readOnly:!0,handlesCount:!0},exchangePointAndMark:{exec:function(e,n){var t=e.selection;if(n.count||t.isEmpty())if(n.count){var a={row:t.lead.row,column:t.lead.column};t.clearSelection(),t.moveCursorToPosition(e.emacsMarkForSelection(a))}else t.selectToPosition(e.emacsMarkForSelection());else t.setSelectionRange(t.getRange(),!t.isBackwards())},readOnly:!0,handlesCount:!0,multiSelectAction:"forEach"},killWord:{exec:function(e,t){e.clearSelection(),"left"==t?e.selection.selectWordLeft():e.selection.selectWordRight();var a=e.getSelectionRange(),o=e.session.getTextRange(a);n.killRing.add(o),e.session.remove(a),e.clearSelection()},multiSelectAction:"forEach"},killLine:function(e){e.pushEmacsMark(null),e.clearSelection();var t=e.getSelectionRange(),a=e.session.getLine(t.start.row);t.end.column=a.length,a=a.substr(t.start.column);var o=e.session.getFoldLine(t.start.row);o&&t.end.row!=o.end.row&&(t.end.row=o.end.row,a="x"),/^\s*$/.test(a)&&(t.end.row++,a=e.session.getLine(t.end.row),t.end.column=/^\s*$/.test(a)?a.length:0);var r=e.session.getTextRange(t);e.prevOp.command==this?n.killRing.append(r):n.killRing.add(r),e.session.remove(t),e.clearSelection()},yank:function(e){e.onPaste(n.killRing.get()||""),e.keyBinding.$data.lastCommand="yank"},yankRotate:function(e){"yank"==e.keyBinding.$data.lastCommand&&(e.undo(),e.session.$emacsMarkRing.pop(),e.onPaste(n.killRing.rotate()),e.keyBinding.$data.lastCommand="yank")},killRegion:{exec:function(e){n.killRing.add(e.getCopyText()),e.commands.byName.cut.exec(e),e.setEmacsMark(null)},readOnly:!0,multiSelectAction:"forEach"},killRingSave:{exec:function(e){e.$handlesEmacsOnCopy=!0;var t=e.session.$emacsMarkRing.slice(),a=[];n.killRing.add(e.getCopyText()),setTimeout((function(){function n(){var n=e.selection,t=n.getRange(),o=n.isBackwards()?t.end:t.start;a.push({row:o.row,column:o.column}),n.clearSelection()}e.$handlesEmacsOnCopy=!1,e.inMultiSelectMode?e.forEachSelection({exec:n}):n(),e.setEmacsMark(null),e.session.$emacsMarkRing=t.concat(a.reverse())}),0)},readOnly:!0},keyboardQuit:function(e){e.selection.clearSelection(),e.setEmacsMark(null),e.keyBinding.$data.count=null},focusCommandLine:function(e,n){e.showCommandLine&&e.showCommandLine(n)}}),n.handler.addCommands(o.iSearchStartCommands);var u=n.handler.commands;u.yank.isYank=!0,u.yankRotate.isYank=!0,n.killRing={$data:[],add:function(e){e&&this.$data.push(e),this.$data.length>30&&this.$data.shift()},append:function(e){var n=this.$data.length-1,t=this.$data[n]||"";e&&(t+=e),t&&(this.$data[n]=t)},get:function(e){return e=e||1,this.$data.slice(this.$data.length-e,this.$data.length).reverse().join("\n")},pop:function(){return this.$data.length>1&&this.$data.pop(),this.get()},rotate:function(){return this.$data.unshift(this.$data.pop()),this.get()}}})),ace.require(["ace/keyboard/emacs"],(function(e){"object"==typeof module&&"object"==typeof exports&&module&&(module.exports=e)}));
|