"Zan karanta shi daga baya": ƙaƙƙarfan makoma na tarin shafukan Intanet na kan layi

Akwai nau'ikan software da wasu mutane ba za su iya rayuwa ba tare da su ba, yayin da wasu ba za su iya tunanin cewa akwai irin wannan abu ba ko kuma kowa yana buƙatarta kwata-kwata. A gare ni tsawon shekaru da yawa wannan shirin ya kasance Binciken Yanar Gizo na Macropool, wanda ya ba ku damar adanawa, karantawa da tsara shafukan Intanet cikin wani nau'in ɗakin karatu na kan layi. Na tabbata da yawa daga cikin masu karatunmu suna samun lafiya tare da tarin hanyoyin haɗin yanar gizo ko haɗin mai bincike da babban fayil tare da saitin takaddun da aka adana. Ina so in sami damar aƙalla yiwa takardu alama a matsayin “karanta” ko “mafi so”, da sauri matsawa daga wannan rubutu zuwa wani kuma ba ya dogara da samuwar Intanet ko takamaiman rukunin yanar gizo ba. Yana faruwa cewa akwai lokaci don karanta daidai lokacin da babu Intanet (a kan hanya, alal misali), da haɗin kai, da rashin alheri, sau da yawa ya zama ɗan gajeren lokaci.

A bayyane yake, marubutan WebResearch sun ƙidaya akan kusan waɗannan mutane. Wannan shirin yana cike da ayyuka iri-iri: ƙididdiga ta sassa da tags, bayanin kula, kowane nau'in fitarwa da shigo da su, da sauransu. Duk da haka, a kusa da 2013, aikin ya daina sabuntawa, sa'an nan kuma shafin yanar gizon mai haɓaka ya daina wanzuwa. Shekaru da yawa na sami damar hawan wannan doki, amma da farko plugins ɗin burauzar sun faɗi (ana samun su ne kawai don nau'ikan IE da FireFox), sa'an nan kuma rukunin yanar gizo na zamani sun daina nunawa kullum a cikin mai kallo dangane da tsohuwar injin IE.

"Zan karanta shi daga baya": ƙaƙƙarfan makoma na tarin shafukan Intanet na kan layi
Babban taga Binciken Yanar Gizo, Makon PC/RE Lamba 17 (575)

Hanyar rashin jin daɗi

Da zarar ya bayyana cewa ba za a iya guje wa wanda zai maye gurbinsa ba, a bango na fara neman analogue mai kyau. Da alama a gare ni ba za a sami matsaloli na musamman a nan ba, tunda sha'awata tana da girman kai. Na kasance a shirye in yi tare da ƙaramin yanki na kayan aikin bincike na Yanar gizo, gami da:

  • adana shafin HTML daga mai bincike ta amfani da tsawo;
  • aƙalla ƙaƙƙarfan kayan aikin kasida (sake suna, tsara kasida, alamomi);
  • (zai fi dacewa) tallafi don takaddun PDF;
  • kowace hanya mai kyau don daidaita tarin ku tare da wasu na'urori.

Abin mamaki na, ban sami wani abu makamancin haka ba, kodayake na bincika Intanet da nisa sosai kuma na yi nazarin shirye-shiryen dozin da yawa waɗanda suka dace da annotations (ban da Evernote, inda aiki mai kama da bayanin yana samuwa ta hanyar biyan kuɗi kawai). A yau, kawai abubuwan da aƙalla ko ta yaya suke gamsar da buri na shine ayyuka TagSpaces и myBase. Nazarin su, gabaɗaya magana, yana da sha'awar al'adu.

TagSpaces shine irin wannan "mai salo-salon-matasa" mai tsarawa akan Electron tare da kyakkyawan gidan yanar gizon, tsararrun daidaitawa kuma, ba shakka, jigon duhu, inda zamu kasance ba tare da shi ba. A lokaci guda, teburin abubuwan da ba su da kyau na tarin tare da gumaka masu zagaye na gaye suna ɗaukar rabin allo, yayin da ke ɗaukar kusan abubuwa ashirin, kuma ana rubuta mahimman abubuwa kamar tallafi don maɓallai masu zafi ko ma'anar daftarin aiki da ake kallo. bisa ga saura ka'ida. A sakamakon haka, ana nuna takardu a cikin karkace, kuma yin aiki tare da tarin ya juya zuwa tsarin motsa jiki mai ban sha'awa da cin lokaci tare da linzamin kwamfuta.

MyBase antipode ya fito ne daga ƙarshen nineties: anan, ban da dubawa mai aiki zalla muna da saitin saiti da ayyuka masu yawa. Koyaya, taga kallon anan shine mai bincike iri ɗaya dangane da tsohon IE (wanda ya riga ya sa karatun ya zama mai wahala), kuma duk takaddun ana adana su a cikin bayanan monolithic. Idan ka sanya shi a cikin babban fayil ɗin Dropbox, misali (har yanzu babu wasu hanyoyin da za a yi aiki tare da wasu na'urori), to tare da ɗan canji a cikin tarin dole ne ka jira har sai an loda daruruwan megabyte na bayanai zuwa uwar garken.

Wani juyi

Wataƙila, ƙarin abun ciki na bayanin kula yana da alama ga mai karatu: yanzu za a ba mu keken kanmu, wanda, ba shakka, zai zama kai da kafadu sama da kowane analog ɗin da ke akwai. Irin e, amma ba sosai ba. Da gaske na kasa jurewa wahala tare da myBase da TagSpaces kuma na zana manajan daftarin aiki na, hanyar haɗin da zan bayar a kusa da ƙarshe. Duk da haka, wannan ƙaramin aiki na sirri ba zai cancanci labarin kansa da kansa ba; Ina yin rubutu ne saboda ina tsammanin zai zama mai ban sha'awa in raba abubuwan da na samu yayin aikina da kuma abubuwan ban mamaki da yawa waɗanda ban taɓa tsammani ba.

Manufofin da manufofin

Bari in fara da gaskiyar cewa ina da kyakkyawar rayuwa a yanzu, kuma ba ni da lokacin yin cikakken ayyukan sha'awa. Saboda haka, tun daga farko, na yanke shawarar cewa a shirye nake in zana kayana daga duk wani abu da ya zo hannun, idan hakan zai hanzarta abubuwa. Bugu da kari, a yanzu ina daukar aiki don aiwatar da mafi ƙarancin ayyuka kawai, wanda ba zai yuwu a yi ba tare da shi ba.

Tsarin Bayanai da Ajiye Shafi

A wane nau'i ya kamata a adana shafukan yanar gizo akan faifai? Yin la’akari da buƙatun da aka tsara a baya, na ga kamar ƙaramin zaɓi ne: ko dai “dukkanin shafin yanar gizon yanar gizo” tsarin adanawa, wato, babban fayil ɗin HTML da babban fayil ɗin da ke da alaƙa, ko tsarin MHTML. Zaɓin farko nan da nan ya zama kamar wanda ba shi da fifiko a gare ni: akwai ƙaramin farin ciki a cikin samun tarin tarin fayiloli akan faifan ku, waɗanda zaku buƙaci cire mahimman takardu, tace waɗanda ba dole ba yayin bincike, da saka idanu kan amincin lokacin yin kwafi. Lokacin da na yi ƙoƙarin yin aiki tare da TagSpaces, dole ne in sake adana duk takarduna don sunan babban fayil ɗin albarkatun ya fara da digo: sannan tsarin ya gane su a matsayin "boye" kuma bai nuna su ba.

Wannan matsala ta ɓoye daga gani a cikin myBase, tun da duk abin da aka adana a cikin database, amma a cikin akwati na ka'idar sauƙi ta yi nasara: Ina so in adana duk abin da fayiloli na yau da kullum akan faifai don kada in yi aiki tare da aiwatar da ayyukan. ayyuka na yau da kullun kamar kwafi, sake suna, sharewa da aiki tare.

Tsarin MHTML yana cikin lokuta masu wahala. Hanya mai sauƙi don adana MHTML An fitar da shi daga Chrome a wannan bazarar, kuma ban ma san inda ya kamata a adana shafukan ba a yanzu? A bayyane yake cewa damar ba ta tafi ba tukuna, akwai kari na ɓangare na uku, amma gabaɗaya wannan wata alama ce mara kyau. Bugu da ƙari, adanawa a cikin tsarin MHTML ba a samun tallafi a cikin Tsarin Tsarin Chromium, wanda kuma baya kara fata.

A lokaci guda, na fara nemo hanya mai sauƙi don adana shafuka daga mai bincike zuwa takamaiman babban fayil. A sakamakon haka, an warware matsalolin biyu tare da asara kaɗan: Na ci karo da wani aiki mai ban mamaki SingleFile, mai ikon adana abubuwan da ke cikin shafin yanar gizon a cikin wani fayil ɗin HTML mai zaman kansa daban. Ana yin wannan ta hanyar canza duk albarkatun da ke da alaƙa zuwa tsarin base64 da saka su kai tsaye zuwa HTML. Tabbas, girman fayil ɗin yana girma, kuma abubuwan da ke ciki suna kallon ɗanɗano kaɗan, amma gabaɗaya tsarin ya zama kamar abin dogaro da sauƙi a gare ni, kuma na daidaita akan shi.

SingleFile ya zo azaman duka tsawo na burauza da aikace-aikacen layin umarni. Yanzu kawai ina amfani da tsawaitawa: ya dace sosai, sai dai cewa dole ne ku zaɓi babban fayil ɗin da aka yi niyya don adanawa da hannu. A nan gaba, tabbas zan yi ƙoƙarin inganta aikace-aikacen don sauƙaƙe wannan tsari. Don kiran aikace-aikacen ɓangare na uku daga Chrome, zaku iya amfani da tsawo Maballin Aikace-aikacen Waje - wannan wani bincike ne mai amfani. Af, aikace-aikacen ya riga ya kasance da amfani: tare da taimakonsa na canza tarin manyan fayiloli da fayiloli daga TagSpaces zuwa saitin takaddun HTML masu zaman kansu.

Matsala tare da GUI da browser

Na sami Python yana da kyau ga kowane nau'in fayil mai sauƙi da ayyukan kirtani, kuma tunda ɗayan ayyukana yana amfani da su wxWidgets, zabi wxPython ya zama ma'ana a matsayin babban tsari.

Bugu da ari, da na ga isassun matsaloli na nuna shafuka a cikin wasu shirye-shirye, na yanke shawarar cewa hanyar da za ta iya dogara da su ita ce shigar da na'urar gani a cikin shirin wanda ya dogara da browser na zamani, wato Chrome ko Firefox.

Dole ne in yarda cewa lokaci na ƙarshe na yin wani abu makamancin haka shine kusan shekaru 15 da suka gabata, kuma ban yi tsammanin wata matsala ba. Ya bayyana cewa ba shi yiwuwa a "kawai mai bincike kawai a kan tsari": ko ta yaya bil'adama ya kasa jimre wa wannan aiki da dogaro kuma a duk duniya. Wasu nau'ikan akwatin lissafin ko maɓalli akan nau'i za a iya sanya su a cikin kowane tsarin GUI, har ma suna samar da lambar dandamali, kuma ya zama kamar a gare ni cewa a cikin 2019, nunin HTML ya kamata kuma ya zama matsala ta duniya baki ɗaya.

Ya bayyana cewa a cikin wxWidgets, alal misali, daidaitaccen ɓangaren "browser" shine naɗaɗɗen dandamali akan "browser" mai dogaro da tsarin, wanda a cikin yanayin Windows, alal misali, yana nufin. Internet Explorer 7, kuma halin da ake ciki a cikin Forms na Windows bai fi kyau ba, kuma sabbin sababbin IE9 suna samuwa kawai ta amfani da marasa mahimmanci. yin amfani da rajista. Kamar yadda kuke gani, ba ni kaɗai nake yin wasu abubuwa ba tsawon shekaru 15 da suka gabata—babu wani abu da ya fashe a nan ma.

Sa'an nan na fuskanci wani zaɓi: canza tsarin ko neman wani madadin bangaren mai binciken. Bayan na yi shakka, na yanke shawarar gwada hanya ta biyu da farko kuma da sauri na ci karo da aikin CEF Python: Haɗin Python don Tsarin Tsarin Chromium, an tsara shi musamman don aikin shigar da Chromium cikin aikace-aikacen Python.

Yi la'akari da halin da ake ciki: Python yana daya daga cikin shahararrun yarukan shirye-shirye a duniya, Chrome shine ainihin abin da ke cikin kasuwa a cikin masu bincike. A lokaci guda, CEF Python yana samun goyon bayan makamashi mutum daya, ƙarfi da lafiya a gare shi. Shin babu wanda yake buƙatar wannan kuma?..

Duk da haka, CEF Python bai taimake ni a ƙarshe ba: kodayake ko da ainihin misalin haɗin kai tare da wxWidgets daga ma'ajin aikin yana da matsala a gaskiya, na yi ƙoƙari na ƙara da shi, amma na kasa magance duk matsalolin da suka taso. Ba zan ma zurfafa cikin batun ba; bai cancanci hakan ba.

Na duba abubuwan da aka haɗa bisa Tsarin Tsarin Chromium dalla-dalla kuma a ƙarshe na yanke shawarar gwada shi. sigar C#. Tunda ina aiki kusan koyaushe tare da Windows, begen barin ayyukan giciye, gabaɗaya, bai dame ni ba.

Bayan wasu hargitsin da ba makawa a farkon, abubuwa sun tafi da sauri: haɗin CefSharp da Forms na Windows ya zama mai nasara, kuma na sami damar magance yawancin matsalolin fasaha ba tare da wata matsala ba.

Game da wadanda ba a gwada su ba

Hakanan zaka iya gwada aiwatar da FireFox a cikin aikace-aikacen C # ta amfani da bangaren Geckofx, amma ba zan iya cewa komai game da shi ba. Madaidaicin sashin burauza na tsarin Qt da ake kira QWebEngineView tushen na Chromium, don haka tabbas zai yi aiki da CefSharp.

Magoya bayan Qt na iya yin sha'awar yin sharhi: da sun ɗauki Qt, da ba su sami matsala ba. Wannan na iya zama gaskiya, amma ana iya la'akari da wxWidgets, idan ba na farko ba, to zaɓi na biyu lokacin zabar tsarin GUI don aikace-aikace a Python ko C++. Kuma a cikin ra'ayi na tawali'u, irin wannan abu kamar mai bincike yakamata a gina shi cikin kowane tsarin GUI mai haɓaka ko ƙasa da haka ba tare da rawa da tambourine ba.

Gidan Laburaren Yanar Gizo

Bari mu koma, duk da haka, zuwa aikace-aikacena tare da taken aiki Gidan Laburaren Yanar Gizo. A yau yana kama da (Drum roll) kamar haka:

"Zan karanta shi daga baya": ƙaƙƙarfan makoma na tarin shafukan Intanet na kan layi

kuma tsabta da taƙaitaccen dubawa Mafi mahimman ayyuka ne kawai ake aiwatarwa anan:

  • Nuna kowane ƙayyadadden kundin adireshi a cikin tsarin azaman ɗakin karatu na daftarin aiki.
  • Duba takardu a cikin taga mai lilo. Kewaya cikin jeri ta hanyar da aka saba (maɓallan siginar kwamfuta, PgUp, PgDn, Gida, Ƙarshe), gungura ta cikin mai lilo ta amfani da Maɓallan Space da Shift+Space.
  • Sake suna takardu.
  • Alama takardu azaman karantawa ko waɗanda aka fi so ta amfani da maɓallan zafi.
  • Ana rarraba takardu ta kowane fanni.
  • Yana sabunta taga aikace-aikacen lokacin da akwai wasu canje-canje a cikin babban fayil ɗin laburare.
  • Ajiye saitunan taga lokacin fita.

Duk wannan yana iya zama kamar ƙananan ayyuka, amma, a ce, adana girman ginshiƙi a cikin TagSpaces har yanzu ba a goyan bayansa ba - a fili, marubutan suna da wasu fifiko.

Matsayin (karanta/fi so) ana adana shi kawai a cikin sunan fayil (karanta fayil doc.html canza suna zuwa doc{R,S}.html). Babu wani aiki tare kamar haka, amma kawai ina ajiye ɗakin karatu a Dropbox - bayan haka, babban fayil ne mai fayiloli.

Har yanzu akwai shirye-shiryen inganta abubuwa masu sauƙi kamar motsi da share fayiloli, da kuma aiwatar da tagging tare da alamun sabani. Idan wani yana so ya taimaka, zan yi farin ciki kawai.

binciken

Iri-iri. Kamar yadda na fada tun farko, abin mamaki ne yadda kayan aikin mutum zai bambanta da wani. Yin amfani da kayan aiki kamar Binciken Yanar Gizo yana zuwa gare ni a zahiri, kuma na ji kusan rashin jin daɗi na jiki daga rashi. A lokaci guda, a fili, Ina da 'yan mutane masu tunani iri ɗaya, in ba haka ba ba za a sami matsala tare da gano analogues ba. A gefe guda, irin waɗannan lokuta suna faruwa tare da ƙarin software na yau da kullun: alal misali, Microsoft ba zai sabunta sigar tebur ta OneNote ba, don haka an tilasta ni yin amfani da sigar 2016, kuma ba dade ko ba dade ni ma zan matsa daga. shi a wani wuri.

Wani abin mamaki kuma shi ne yadda yake da wahala a kewaya yanayin dakunan karatu da tsarin zamani. A cikin aikina, ba kasafai nake rubuta aikace-aikacen tebur daga farko zuwa ƙarshe ba, kuma na ɗauka cewa a zahiri duk wani kayan aiki na kowane yaren shirye-shirye zai dace da aikina (taga ɗaya, abubuwa uku, hulɗar maras muhimmanci). Don haka kawai mu ɗauki komai mu yi shi cikin ƴan kwanaki.

Ya juya cewa gaskiyar ba ta da kyau sosai, kuma za ku iya shiga cikin matsala kawai. Bari mu ce ina da masu rarraba biyu waɗanda za a iya amfani da su don shimfiɗa tagar mai bincike. Don haka, maido da matsayinsu bayan lodawa cikin wxWidgets yana da matukar wahala, tunda tsarin yana sanya su a cikin tsoffin wurare bayan kusan duk abubuwan da suka faru a gare ni, kuma dole ne in yi kowane irin hacking don cimma abin da nake buƙata. Wa zai yi hasashe?

A gefe guda, a bayyane yake cewa a cikin Forms na Windows an tsara duk abin da aka tsara don "musamman kasuwanci". Kusan duk abin da ake buƙata yana samuwa daga cikin akwatin: adanawa / maido da saitunan aikace-aikacen, ƙayyadaddun ƙayyadaddun abubuwan da aka gyara (alal misali, ban yi tsammanin cewa za a iya neman ɓangaren TreeView don cikakken hanyar daga tushen zuwa kowane nau'in yaro ba. a cikin nau'i na kirtani), da kayan aikin da ba na da mahimmanci kamar babban fayil na canza abun ciki.

A kowane hali, ba a ɓata lokaci ba, kuma sakamakon za a iya la'akari da shi mai gamsarwa, don haka me za ku iya so daga rayuwa, daidai?

source: www.habr.com

Add a comment