Snippet ( angol részlet - kivonat, töredék) - a forrásszöveg vagy programkód töredéke, amelyet keresőmotorokban, szövegszerkesztőkben és fejlesztői környezetekben használnak .
A részletkezelés egyes kódszerkesztők és fejlesztői környezetek funkciója . Lehetővé teszi a felhasználó számára, hogy elmentse a kódrészleteket további felhasználásra a kód fejlesztése során ebben a szerkesztőben.
A kivonat kifejezés a keresőmotor által talált oldal kis szövegrészeire utal, amelyeket hivatkozásleírásként használnak a keresési eredményekben. Általában azt a kontextust tartalmazzák, amelyben a kulcsszó az oldal szövegében találkozott. A Description metatag szövege kivonatként is megjeleníthető. További részletekért tekintse meg a keresési eredményoldalt .
Ha megnézi a részletet, akkor nagyjából megértheti, hogy az oldal megfelel-e a lekérdezésének, anélkül, hogy magát az oldalt megnyitná.
A szövegszerkesztők töredékkezelési funkciója népszerű a szoftverfejlesztők és azok körében, akiknek folyamatosan ismétlődő szöveget kell beírniuk. Ezt az igényt az magyarázza, hogy a bemeneti szövegrészlet nem, vagy nagyon keveset változik.
Az ezt a funkciót tartalmazó szövegszerkesztők általában rendelkeznek egy olyan mechanizmussal, amely lehetővé teszi egy töredékkészlet (egy könyvtár) kezelését ugyanúgy, ahogy a szerkesztők vagy operációs rendszerek lehetővé teszik a dokumentumok vagy fájlok kezelését. Ez a mechanizmus magában foglalja az olyan műveleteket, mint a töredékek megtekintése, hozzáadása, módosítása, törlése, rendezése, szűrése, csoportosítása és átnevezése egy adattárban , katalógusban vagy adatbázisban .
Itt a részlet egy kis újrafelhasználható forráskód vagy szövegrész. A töredékek nem helyettesítik az eljárásokat, funkciókat vagy más hasonló strukturált programozási koncepciókat. Általában arra szolgálnak, hogy könnyebben olvashatóvá tegyék a függvények kódját, amelyek nélkül túlterheltek a részletekkel, vagy hogy elkerüljék ugyanazon általános kódrészlet megismétlődését. . Az integrált fejlesztői környezetek (IDE-k) beépített lehetőségeket tartalmaznak a nyelvi konstrukciók beviteléhez. Például a Microsoft Visual Studio , a Borland Developer Studio programban ehhez meg kell adnia egy kulcsszót, és meg kell nyomnia egy bizonyos billentyűkombinációt. A Geany IDE rendelkezik egy speciális snippets.conf fájllal (a fájl elérési útja: /home/user/.config/geany), amely lehetővé teszi saját kódrészletek létrehozását. Más programok, például a Macromedia Dreamweaver és a Zend Studio lehetővé teszik töredékek használatát a webes programozásban .
A kivonatok funkciói a fent leírtakon túlmenően felhasználhatók a töredékek "interaktivitás" foka (módosítható, testreszabható) szerinti osztályozására. .
Ebből a szempontból a töredékek a következőkre oszlanak:
A statikus kivonatok elsősorban változatlan szövegből állnak, amelyet a felhasználó beilleszthet az aktuális dokumentumba. A felhasználó nem állíthat be további paramétereket, kivéve talán a kurzor pozícióját a beszúrt szöveghez képest. A statikus kódrészletek hasonlóak a programozási nyelvek egyszerű makróihoz .
A dinamikus kódrészletek rögzített szövegből és dinamikus elemekből állnak. A felhasználó a részlet kiválasztása és beillesztése során beállíthatja mind ezeknek a dinamikus elemeknek az értékét, mind a változatlan szövegben elfoglalt helyét. Példák a dinamikus elemekre olyan változók, amelyek az aktuális dátum vagy rendszeridő értékét veszik fel, vagy a felhasználói bevitelt egy grafikus felületen keresztül. A dinamikus kódrészleteknek sok közös vonása van a makróval és a sablonokkal .
A szkriptrészletek programozási makrónyelven vagy szkriptnyelven található kódból állnak . A szkriptrészletek maximális rugalmasságot biztosítanak a felhasználónak, természetesen a programozási nyelv, a nyelv felhasználó általi ismertsége és a nyelv elterjedtsége keretein belül.
A parancsfájl-parancsok képességei a kódrészleteket használó alkalmazástól (gazdaalkalmazásoktól) függően változnak. Ezek magukban foglalhatják a shell -parancsok végrehajtását, a párbeszédpanelek megjelenítését és egyéb módokat, amelyekkel a felhasználó interakcióba lép az operációs rendszerrel és a gazdagép alkalmazás összetevőivel.
Az alkalmazások szkriptrészlet-képességeinek támogatása nagyon eltérő. Az alábbiakban olyan funkciókat ismertetünk, amelyek jellemzően a programozható kódrészleteket támogató rendszereken találhatók meg.
Bár a változtathatatlan szöveg támogatása alapfunkció, amelyet még a csak statikus kivonatokat támogató programokban is megvalósítanak, a programozható töredékeket is használják az ilyen szövegekkel való munkavégzésre.
Az egyik gyakori nehézség azonban az, hogy a programozható kódrészleteket támogató rendszernek gyakran képesnek kell lennie arra, hogy különbséget tegyen a statikus szöveg és a programparancsok között. Ezt a megkülönböztetést tovább bonyolítja, hogy a szoftverrészleteket támogató alkalmazások szinte mindig több programozási nyelv támogatását is tartalmazzák, akár szintaktikai kiemeléssel , akár beépített parancsok végrehajtásával.
Ezen és egyéb okok miatt a statikus szöveg kódrészletből való kinyerése szinte mindig azt jelenti, hogy el kell kerülni az elemzéssel és a határoló azonosítással kapcsolatos nehézségeket.
A programozható töredékek gyakran lehetővé teszik a felhasználó számára, hogy megadja a meglévő változók névterét vagy hatókörét, amelyben aztán különféle állandókat és változókat választhat ki a részlet szövegének kialakításához. Ez lehet a rendszerben dolgozó felhasználó e-mail címe, az aktuális rendszeridő vagy dátum, a funkció eredménye.
A szkriptrészleteket gyakran olyan fájlokhoz társítják, amelyeken éppen dolgoznak. Ezért a töredékekben lévő változók tartalmazhatják a környezeti változók értékeit és a fájl nevét, a kurzor pozícióját, a fájlt tartalmazó könyvtárat és a szerkesztett fájlhoz kapcsolódó egyéb értékeket.
A szkriptrészletek több programozási nyelv kódját is tartalmazhatják . Ezek lehetnek független programozási nyelvek és egy olyan nyelv, amely az alkalmazáshoz specifikus, amelyen belül használják. [egy]
A szkriptrészletek általában tartalmazzák a felhasználó által beírt érték helyettesítésének lehetőségét. Ez az érték mindaddig nem definiálható, amíg a kódrészletet be nem illesztik vagy valamilyen módon aktiválják a szerkesztés során. Egyes alkalmazások speciális jelölőnyelvet határoznak meg, amely lehetővé teszi a szerkesztő számára, hogy mintahatárokat határozzon meg a beírt szövegben.
Más alkalmazások grafikus felhasználói felületet és modális ablakokat használnak , amelyek lehetővé teszik a felhasználó számára, hogy egy vagy több értéket adjon meg a mintákhoz.
SablonazonosítókA sablonokat általában speciális karakterek vagy karaktersorozatok különböztetik meg, amelyek elválasztják őket a részlet szövegének többi részétől. Egyes rendszerek lehetővé teszik, hogy neveket (azonosítókat) adjunk a sablonoknak. Az azonosítók hasznosak lehetnek egy sablon megismétlésében vagy módosításában.
A következő példarészlet szövege a és az first_nameazonosítókat last_namehasználja item:
Kedves {%first_name%} {%last_name%}! {%item%} szállítmánya készen áll az átvételre. Köszönjük, {%first_name%}! MintaismétlésAz ismétlés lehetővé teszi a felhasználó számára, hogy a mintával egyező értéket többször használja a kódrészlet törzsében. Az előző példában a sablonazonosító first_nameegy példa erre a felhasználásra.
Sablon módosításEz a funkció lehetővé teszi annak megadását, hogy a mintához illesztett értéket módosítani kell, ha a kódrészlet törzsének különböző részein használják. Például a felhasználó megadhatja, hogy a dokumentum címével helyettesített és egy részletben többször megismétlődő sablon első alkalommal nagybetűvel, minden más esetben kisbetűvel jelenjen meg.
Az alábbiakban a kódrészleteket támogató alkalmazások részleges listája található. További információkért tekintse meg a szövegszerkesztőkről szóló cikket .
Részletek | Statikus | dinamikus | Szkriptelt |
vim | Igen | Igen | Igen |
szövegtárs | Igen | Igen | Igen |
szövegtábla | Igen | Nem | Nem |
emacs | Igen | Igen | Igen |
Magasztos szöveg | Igen | Igen | Igen |
IntelliJ ÖTLET | Igen | Igen | Igen |