# Priručnik za Oktetu

## Uvod

Okteta je jednostavan uređivač za sirove podatke u fajlovima.

Podaci su prikazani u dve varijante: kao brojevne vrednosti bajtova, i kao znakovi pridruženi tim vrednostima. Vrednosti i znakovi mogu biti prikazani ili u dve kolone (tradicionalni prikaz u heksadekadnim uređivačima) ili po vrstama sa vrednošću iznad znaka. Uređivati se može i po vrednostima i po znakovima.

Pored uobičajenih uređivačkih sposobnosti, Okteta pruža i mali skup specijalnih alatki, kao što su tabelarno nabrajanje dekodiranja prema uobičajenim tipovima podataka, tabelarno nabrajanje svih mogućih bajtova sa znakovnim i vrednosnim ekvivalentima, informativni prikaz statistike, kalkulator kontrolnih suma, alatka za filtriranje i alatka za izdvajanje niski.

Sve izmene nad podacima mogu biti opozivane i ponavljane bez ograničenja.

## Osnove

### Pokretanje Oktete

Upišite ``okteta`` u komandni odzivnik ili izaberite Heksadekadni uređivač iz grupe Programi Alatke u pokretaču programa.

Dostupne su standardne Qt i KF5 opcije komandne linije, a nabrojati se mogu izvršavanjem ``okteta` `--help``.

Opcije komandne linije posebne za Oktetu su:

``<URL‑ovi>`` — otvara fajlove sa zadatih URL‑ova.

### Korišćenje

Glavni prozor Oktete ima sledeće komponente: traku menija, traku alatki, traku stanja, jednu ili više bočnih traka sa alatkama, i glavni prikaz podataka sa jezičcima.

Kada se otvori fajl ili napravi novi niz bajtova, sadržaj bajtova se niže u redove sa zadatim brojem bajtova po redu. Prikazuju se u dva oblika: kao brojevne vrednosti i kao znakovi pridruženi tim vrednostima. Vrednosti i znakovi mogu biti prikazani ili razdvojeno u dve kolone, ili jedni do drugih sa vrednošću iznad znaka. Na levoj strani dati su pomaci prvog bajta u svakom redu.

Radi se slično kao u većini uređivača teksta: podaci se mogu uređivati, isecati, kopirati, nalepljivati i prevlačiti, kao i običan tekst. Kursor označava trenutni položaj. Pritiskom na taster Insert menjate između režima prebrisavanja i umetanja. Režim prebrisavanja je strožiji nego u uređivačima teksta, u tome što ne dozvoljava postupke koji bi promenili veličinu niza bajtova.

Za razliku od uređivača teksta, sadržaj se prikazuje u dva oblika; samo jedan od njih može biti aktivan za prihvatanje ulaza. Data su dva povezana kursora, jedan u prikazu vrednosti a drugi u prikazu znakova, i kursor aktivnog prikaza trepće. Kada su aktivni znakovi, pritiskom na prvu cifru otvara se minimalni uređivač radi unošenja ostatka vrednosti.

Dijalog za pretragu omogućava traženje određene niske bajtova, definisane kao heksadekadna, dekadna, oktalna ili binarna vrednost, ili kao tekst (po tekućem kodiranju ili UTF‑8).

Istovremeno može biti otvoreno više nizova bajtova, ali samo jedan može biti aktivan. Aktivni niz birate kroz meni Prozori.

## Alatke

### Pregled

Okteta sadrži razne alatke, neke za analiziranje i manipulisanje nizovima bajtova, a neke sa opštijom namenom. Ove alatke se mogu aktivirati i deaktivirati preko stavke Alatke na traci menija. Svaka alatka ima svoj mali prikaz, koji ili pristaje u jednu od bočnih traka ili slobodno pluta kao prozor. Prikaze alatki možete sidriti, otkačinjati, preraspoređivati, a takođe i slagati tako što pritisnete levo dugme miša nad naslovnom trakom prikaza, pomerite ga koliko želite, pa pustiti dugme da dovršite radnju (ili taster Esc da odustanete).

#### Analizatori i manipulatori

Tabela vrednost—znak

- Tabela nabraja sve moguće vrednosti bajta, i numeričke i znakovne u različitim kodiranjima.

  Izabrana vrednost može se umetnuti na položaju kursora za definisani broj bajtova. Umeće se dugmetom Umetni ili dvoklikom na red u tabeli.

Binarni filter

- Filter izvodi binarne operacije nad izabranim bajtovima. Nakon izbora operacije (I, ILI, ROTIRAJ...), parametri se, ako ih ima, mogu postaviti u polju ispod. Filter se primenjuje dugmetom Filtriraj.

Niske

- Ova alatka pronalazi niske u izabranim bajtovima. Nakon izbora minimalne dužine, traženje se pokreće dugmetom Izvuci. Spisak prikazanih niski može se suziti unošenjem filterskog izraza.

Statistika

- Ova alatka gradi statistiku za izabrane bajtove, koju čine učestalosti ponavljanja za svaku vrednost bajta u izboru. Može se proračunati dugmetom Izgradi.

Kontrolna suma

- Ova alatka računa razne kontrolne i disperzione sume izabranih bajtova. Pošto izaberete algoritam i postavite parametar, ako ga ima, suma se izračunava pritiskom na dugme Izračunaj.

Tabela dekodiranja

- Tabela prikazuje vrednosti bajtova na položaju kursora, za neke uobičajene jednostavne tipove podataka kao što su celobrojni ili u pokretnom zarezu, ali i UTF‑8. Dvoklik na vrstu u tabeli otvara uređivač u kojem se vrednost može izmeniti.

Strukture

- Ova alatka omogućava ispitivanje i uređivanje nizova bajtova na osnovu korisnički zadatih definicija struktura. Detaljne instrukcije date su u posebnom odeljku.

#### Opšte alatke

Fajl sistem

- Ova alatka je ugnežđeni pregledač fajlova kojim se mogu birati fajlovi za otvaranje.

Dokumenti

- Ova alatka pokazuje sve trenutno učitane i napravljene fajlove. Simbolima su označeni fajl sa trenutno aktivni prikazom, fajlovi koji imaju nesačuvanih izmena i fajlovi čiju uskladištenu kopiju je izmenio neki drugi program.

Obeleživači

- Ova alatka služi za upravljanje obeleživačima, kao alternativa meniju Obeleživači.

  Obeleživači su za sada prolazni, tj. ne upisuju se kada zatvorite niz bajtova ili ceo program.

Podaci o fajlu

- Ova alatka navodi neke podatke o tekućem fajlu, kao što su tip, lokacija skladištenja i veličina.

Terminal

- Ugnežđeni terminal, radna fascikla nije povezana sa aktivnim fajlom.

Pretvaranje kodiranja

- Pretvaranje bajtova tako da zapisani znakovi budu isti u drugom kodiranju. Podržana su samo osmobitna kodiranja, a nepoklopljeni znakovi trenutno se zamenjuju ukodiranom nulom.

### Alatka struktura

#### Opšte

Alatka struktura omogućava analiziranje i uređivanje nizova bajtova na osnovu korisnički zadatih definicija struktura, koje se mogu sastojati od nizova, unija, primitivnih tipova i nabrojivih vrednosti.

Poseduje sopstveni dijalog postavki, koji se poziva dugmetom Postavke. Mogu se podesiti razne opcije, poput stila prikaza vrednosti (dekadno, heksadekadno, binarno). Moguće je izabrati koje se definicije struktura učitavaju i koje strukture se vide u prikazu.

Struktura se definiše u fajlu Oktetine definicije strukture (XML format sa nastavkom `.osd`). Na ovo se dodaje i `.desktop` fajl sa metapodacima o fajlu opisa strukture, poput autora, domaće stranice i licence.

Trenutno nema ugrađene podrške za stvaranje i uređivanje definicija struktura, već se to mora ručno raditi kako je opisano u narednim odeljcima.

#### Instaliranje definicija struktura

##### Instaliranje preko vrućih novotarija

Nove definicije struktura najlakše se instaliraju putem podrške za vruće novotarije ugrađene u Okteti. Da biste instalirali postojeću strukturu, otvorite dijalog postavki alatke za strukture. U njemu idite pod jezičak Upravljanje strukturama i kliknite na dugme Dobavi nove strukture.... Dijalog koji se na to pojavi omogućava vam instaliranje i deinstaliranje struktura.

##### Ručno instaliranje definicija struktura

Alatka struktura traži opise struktura u potfascikli `okteta/structures/` korisničke fascikle za podatke programâ̂ (koju nalazite izvršavanjem ``qtpaths` `--paths GenericDataLocation``). Možda ćete morati da napravite ovu fasciklu, ako još uvek nema nijedne instalirane definicije strukture.

Za svaku definiciju strukture postoje dva fajla: jedan za samu definiciju, i jedan `.desktop` fajl za metapodatke (autor, verzija, itd.).

U navedenoj fascikli, svaka definicija strukture ima svoju potfasciklu koja sadrži i `.desktop` i `.osd` ili `main.js` fajl definicije.

Na primer, ako je fascikla podataka programâ̂ ```qtpaths` `--paths GenericDataLocation``` a ime definicije strukture `PrimerStrukture`, onda postoji fascikla `okteta/structures/ExampleStructure` koja sadrži fajlove `PrimerStrukture.desktop` i `PrimerStrukture.osd`.

##### Korišćenje instaliranih struktura

Pošto instalirate novu definiciju strukture, da biste je koristili morate ponovo pokrenuti Oktetu. Pošto to učinite, otvorite dijalog postavki alatke za strukture. Idite na jezičak Upravljanje strukturama i obezbedite da je odgovarajuća definicija strukture aktivirana. Zatim pređite na jezičak Strukture i proverite da li je željeni element prikazan na desnoj strani.

#### Deljenje definicija struktura

Za uobičajene strukture možda ne morate sami stvarati definicije, već se možete poslužiti postojećim definicijama sa mestâ̂ poput store.kde.org.

Takođe možete poželeti da podelite svoje definicije. To činite tako što napravite arhivu (npr. tipa `.tar.gz`) koja sadrži samo potfasciklu sa `.desktop` fajlom i fajlom definicije strukture. Nastavljajući primer iz prethodnog odeljka, ovo bi bila fascikla `PrimerStrukture` sa svojim potpunim sadržajem. Upotreba ovog formata za deljenje definicija struktura omogućava njihovo instaliranje u Okteti bez ručnih zahvata.

#### Stvaranje definicija struktura

Noviji, ali još nedovršeni, vodič za pisanje definicija struktura može se naći na vikiju Korisničke baze KDE‑a.

Definicije struktura mogu se stvarati na dva načina. Prvi je pisanje definicije u XML‑u, a drugi upotrebom JavaScripta. Pristup JavaScriptom omogućava vam da izradite složenije strukture, sa mogućnostima poput, recimo, overavanja strukture. XML pruža manje mogućnosti, ali može biti najlakši pristup ako je statička struktura sve što vam treba. Ako želite dinamičku strukturu, npr. gde dužine nizova zavise od drugih vrednosti iz strukture, ili se raspored strukture menja sa promenom vrednosti nekih članova, moraćete da napišete definiciju strukture na JavaScriptu. Ovome ima jedan izuzetak: ako dužina niza treba da bude tačno jednaka nekoj drugoj vrednosti iz strukture, to se može zadati i XML‑om; ali ako je nešto poput dužina - 1, tada mora JavaScript.

#### XML format fajla za definisanje struktura

Noviji, ali još nedovršeni, vodič za pisanje definicija struktura može se naći na vikiju Korisničke baze KDE‑a.

`.osd` XML fajl ima jedan koreni element: <data>, bez atributa. Unutar ovog elementa mora stojati jedan od sledećih:

<primitive>

- Za stvaranje primitivnih tipova podataka, poput int ili float. Ovaj element nema podelemenata, a može imati sledeće atribute:

  type

- Tip ovog primitivnog tipa. Mora biti jedan od sledećih:

  - char za 8‑bitni ASCII znak

  - int8, int16, int32, int64 za označeni celobrojni te veličine

  - uint8, uint16, uint32, uint64 za neoznačeni celobrojni te veličine

  - bool8, bool16, bool32, bool64 za neoznačeni logički (0 = netačno, bilo šta drugo = tačno) te veličine

  - float za 32‑bitni broj u pokretnom zarezu (IEEE 754)

  - double za 64‑bitni broj u pokretnom zarezu (IEEE 754)

<bitfield>

- Za stvaranje bitskog polja. Ovaj element nema podelemenata, a može imati sledeće atribute:

  width

- Broj bitova u ovom bitskom polju. Mora biti između 1 i 64.

type

- Tip ovog bitskog polja. Mora biti jedan od sledećih:

  - unsigned za bitsko polje gde vrednost treba tumačiti kao neoznačenu (opseg 0 do 2width - 1)

  - signed za bitsko polje gde vrednost treba tumačiti kao označenu (opseg -2width - 1 do 2width - 1 - 1)

  - bool za bitsko polje gde vrednost treba tumačiti kao logičku

  Ne zaboravite da dodate ispunu posle <bitfield>, pošto će u suprotnom naredni element početi usred bajta (osim kod niski i nizova, koji automatski dodaju ispunu). Naravno, ispuna nije potrebna ako želite ovo ponašanje.

<enum>

- Za stvaranje primitivnog tipa, ali gde su vrednosti prikazane kao članovi nabrajanja, ako je moguće. Ovaj element nema podelemenata (ali će vam trebati oznaka <enumDef> u fajlu radu upućivanja). Ima sledeće atribute:

  enum

- Podložno nabrajanje za ovu vrednost. Mora odgovarati atributu name jedne od oznaka <enumDef> u ovom fajlu.

type

- Tip ovog nabrajanja. Pogledajte istoimeni atribut uz <primitive>. Jedina razlika je to što ovde double i float nemaju smisla.

<flags>

- Isto kao i <enum>, samo što se vrednosti predstavljaju kao rezultat bitskog ili nad svim vrednostima nabrajanja.

<struct>

- Za stvaranje strukture. Svi drugi elementi(uključujući i <struct>) mogu biti deca ovoga, i tada će biti deo rezultujuće strukture.

<union>

- Za stvaranje unije. U suštini isto što i <struct>, osim što će svi dečji elementi počinjati od istog pomaka. Korisno za tumačenje istog niza bajtova na različite načine.

<array>

- Za stvaranje niza. Ovaj element prihvata tačno jedno dete (podložni tip niza), koje može biti bilo koji od elemenata, čak i sam <array>. Ima sledeće atribute:

  length

- Broj elemenata u ovom nizu, kao dekadni broj. Alternativno može biti niska jednaka atributu name nekog od prethodno definisanih elemenata <primitive>, <enum> ili <flags>; tada će dužina biti vrednost tog elementa. Dužina je trenutno ograničena na 10000, jer bi veći nizovi trošili previše memorije i previše usporavali program.

<string>

- Za stvaranje niske sa određenim kodiranjem. Podrazumevano se dobija niska okončana nulom, u stilu C‑a. Za stvaranje različitih tipova niski mogu se upotrebiti sledeći atributi:

  terminatedBy

- Ovaj atribut određuje kojom će se Unicode kodnom tačkom niska okončavati. Mora biti heksadekadni broj (opciono sa vodećim 0x); ako je kodiranje ASCII, smislene su samo vrednosti do 0x7f. Ako nije zadato ni ovo ni maxCharCount ni maxByteCount, pretpostavlja se 0 (niska C stila).

maxCharCount

- Najveći broj znakova koji niska može da ima. Ako je zadato i terminatedBy, prvo što naiđe okončava nisku. Međusobno isključivo sa maxByteCount.

maxByteCount

- Koliko najviše bajtova niska može biti dugačka. Ako je zadato i terminatedBy, prvo što naiđe okončava nisku. Međusobno isključivo sa maxCharCount. Za kodiranja poput ASCII‑a, ovo je isto kao maxCharCount.

type

- Kodiranje ove niske. Može biti jedno od sledećih:

  - ASCII

  - LATIN-1

  - UTF-8

  - UTF-16-LE ili UTF-16-BE. Ako se ne zada ni sufiks -LE ni -BE, pretpostavlja se mala krajnost.

  - UTF-32-LE ili UTF-32-BE. Ako se ne zada ni sufiks -LE ni -BE, pretpostavlja se mala krajnost.

Svaki element takođe prihvata atribut name, koji se posle vidi u prikazu struktura.

#### Primer iste strukture u XML‑u i JavaScriptu

Noviji, ali još nedovršeni, vodič za pisanje definicija struktura može se naći na vikiju Korisničke baze KDE‑a.

##### Zajednički koraci za oba pristupa

Naš fajl sa metapodacima izgleda ovako:

            [Desktop Entry]
            Encoding=UTF-8
            Icon=arrow-up
            Type=Service
            ServiceTypes=KPluginInfo

            Name=Simple test structure
            Comment=A very simple test structure containing only two items

            X-KDE-PluginInfo-Author=Pera Peric
            X-KDE-PluginInfo-Email=pera.peric@nikadodjija.org
            X-KDE-PluginInfo-Name=simplestruct
            X-KDE-PluginInfo-Version=1.0
            X-KDE-PluginInfo-Website=http://www.nikadodjija.org/plugins/
            X-KDE-PluginInfo-Category=structure
            X-KDE-PluginInfo-License=LGPL
            X-KDE-PluginInfo-EnabledByDefault=false

- Ikonica koju Okteta prikazuje za ovu strukturu može biti neka koju pronalazi ``kdialog` `--geticon``, ili putanja do ikonice.

Sva polja bi trebalo da su prilično očigledna, osim `X-KDE-PluginInfo-Name`. Vrednost ovog polja mora biti jednaka imenu fascikle koja sadrži fajl, kao i imenu `.desktop` fajla. Ako se pravi XML definicija strukture, i ime `.osd` fajla mora biti jednako ovome.

U ovom primeru imali bismo fasciklu po imenu `simplestruct`, koja sadrži fajl `simplestruct.desktop`. Ako se struktura definiše XML‑om, fascikla bi takođe sadržala fajl `simplestruct.osd`. Ako bismo koristili JavaScript, fajl definicije bi se umesto toga zvao `main.js`.

##### Jednostavna XML definicija strukture

Za početak definišimo vrlo jednostavnu probnu strukturu koja sadrži samo integralne tipove podataka (jedan znak, jedan 32‑bitni označeni ceo broj i jedno bitsko polje). U C‑u ili C++u ovo bi se izrazilo kao:

              struct simple {
                char aChar;
                int anInt;
                bool bitFlag :1;
                unsigned padding :7;
              };

Prvi korak je pisanje `.osd` fajla, formata definisanog u prethodnom odeljku. Nazvaćemo ga `simplestruct.osd`:

              <?xml version="1.0" encoding="UTF-8"?>
              <data>
                <struct name="simple">
                  <primitive name="aChar" type="Char"/>
                  <primitive name="anInt" type="Int32"/>
                  <bitfield name="bitFlag" type="bool" width="1"/>
                  <bitfield name="padding" type="unsigned" width="7"/>
                </struct>
              </data>

Ovo je sasvim slično definiciji u C‑u i C++u

Napravite fasciklu `simplestruct` unutar instalacione fascikle struktura (pogledajte odeljak o ručnom instaliranju definicija) i kopirajte u nju ova dva fajla. Sada možete ponovo pokrenuti Oktetu i koristiti novu strukturu.

##### Jednostavna struktura u JavaScriptu

Da bismo izveli istu strukturu pomoću JavaScripta, napravimo fajl po imenu `main.js` (umesto prethodnog `simplestruct.osd`) i promenimo `X-KDE-PluginInfo-Category=structure` u `X-KDE-PluginInfo-Category=structure/js`. Fajl treba da ima sledeći sadržaj:

            function init() {
              var structure = struct({
                aChar : char(),
                anInt : int32(),
                bitFlag : bitfield("bool", 1),
                padding : bitfield("unsigned", 7),
              })
              return structure;
            }

Struktura koju prikazuje Okteta uvek je povratna vrednost funkcije `init`.

Sledeće funkcije se mogu pozivati radi stvaranja primitivnih tipova:

- `char()`

- `int8()`, `int16()`, `int32()`, `int64()`

- `uint8()`, `uint16()`, `uint32()`, `uint64()`

- `bool8()`, `bool16()`, `bool32()`, `bool64()`

- `float()`

- `double()`

Funkcija `bitfield` uzima dva argumenta. Prvi je niska `"bool"`, `"signed"` ili `"unsigned"`. Drugi argument je ceo broj kojim se zadaje širina u bitovima.

##### Složenije strukture

Prelazimo na definisanje složenije strukture, koju ćemo nazvati `complex` i sačuvati u fajl po imenu `complex.osd`. Ova struktura će sadržati dva niza (jedan fiksne dužine a drugi kome se dužina određuje pri izvršavanju), kao i ugnežđenu strukturu i uniju.

              <?xml version="1.0" encoding="UTF-8"?>
              <data>
                <struct name="complex">
                  <primitive name="size" type="UInt8" />
                  <union name="aUnion">
                    <array name="fourBytes" length="4">
                      <primitive type="Int8" />
                    </array>
                  </union>
                  <struct name="nested">
                    <array name="string" length="size"> <!-- references the field size above -->
                      <primitive type="Char" />
                    </array>
                  </struct>
                </struct>
              </data>

Ovo bi odgovaralo sledećem u pseudo-C‑u/C++u:

    struct complex {
                uint8_t size;
                union aUnion {
                  int8_t fourBytes[4];
                };
                struct nested {
                  char string[size]; // nije pravilan C++, upućuje na vrednost uint8 size
                };
              };

Očigledno samo nizovi dinamičke dužine mogu upućivati na polja pre niza.

Zatim pravimo fajl `complex.desktop` kao u prethodnom primeru (ne zaboravite da ispravno zadate `X-KDE-PluginInfo-Name`) i na isti način instaliramo oba fajla.

##### Još informacija

Nekoliko primera definicija struktura može se naći git riznici. Među njima su, na primer, definicije zaglavlje PNG i ELF fajlova. XML šema koja opisuje strukturu `.osd` fajla takođe se nalazi u riznici. Za još informacija možete pisati na &Alex.Richardson.email;.

## Pregled sučelja

### Stavke menija

Pored uobičajenih KDE menija opisanih u poglavlju o menijima Osnova KDE‑a, Okteta sadrži i sledeće programski posebne stavke:

#### Meni Fajl

Ctrl N Fajl Novi

- Stvara novi niz bajtova...

  - prazan: ...bez podataka.

  - iz klipborda: ...prema tekućem sadržaju klipborda.

  - obrazac...: ...po datom obrascu.

  - nasumični podaci...: ...sa nasumičnim podacima.

  - niz: ...sa svim bajtovima od 0 do 255.

Fajl Izvoz

- Izvozi izabrane bajtove u fajl...

  - vrednosti: ...kodirane kao vrednosti bajtova. Podrazumevano su vrednosti razdvojene jednim razmakom. Znak za razdvajanje može da se promeni kroz dijalog Izvezi.

  - znakovi: ...kodirane kao obični tekst.

  - base64: ...kodirane u formatu base64.

  - base32: ...kodirane u formatu base32.

  - ASCII‑85: ... kodirane u formatu ASCII‑85.

  - Uuencoding: ...kodirane u formatu Uuencoding.

  - Xxencoding: ...kodirane u formatu Xxencoding.

  - Intelov HEX: ...kodirane u formatu Intelovog HEX‑a.

  - S‑Record: ...kodirane u formatu S‑Record.

  - C niz: ...definisane kao niz u programskom jeziku C.

  - obični tekst (prikaz): ...kao u prikazu podataka, sa pomakom, vrednostima bajtova i znakovima.

Fajl Dozvole Samo‑za‑čitanje

- Kad je postavljeno, učitani niz bajtova ne može da se menja.

Fajl Zatvori sve druge

- Zatvara sve osim tekućeg niza bajtova.

#### Meni Uređivanje

Jednostavno kopiranje i isecanje šalju podatke u klipbord sa MIME tipom `application/octetstream`. Klipper ne može da prikaže ovakve podatke, a ni većina drugih programa ne ume da rukuje njima, pošto su jednostavno sirovi podaci. Pogledajte i podmeni Kopiranje kao.

Uređivanje Kopiranje kao

- Kopira izabrane bajtove u klipbord, u zadatom formatu. Spisak dostupnih formata daje stavka menija Fajl Izvezi.

Uređivanje Umetni

- Umetni obrazac...

- Umeće zadati niz bajtova kod kursora.

  Dijalog sadrži opcije za zadavanje broja umetanja i formata obrasca (heksadekadno, dekadno, oktalno, binarno, znakovi, UTF‑8).

Ctrl Shift A Uređivanje Poništi izbor

- Poništava trenutni izbor.

Ctrl E Uređivanje Izaberi opseg...

- Otvara ugnežđeni dijalog za unošenje opsega za izbor.

Insert Uređivanje Režim prebrisavanja

- Prebacuje između režima umetanja i prebrisavanja.

  Režim prebrisavanja izveden je vrlo strogo. Nije moguća izmena veličine podataka (bajtovi se nemogu nadovezivati niti uklanjati).

Ctrl F Uređivanje Nađi...

- Traži zadati obrazac kroz dokument.. Mogu se tražiti heksadekadni, oktalni, binarni i tekstualni obrasci.

  Kroz opcije u dijalogu možete zadati početnu tačku, smer i opseg pretrage.

Ctrl G Uređivanje Na pomak...

- Pomera kursor na zadati pomak.

#### Meni Prikaz

F11 Prikaz Prikaz pomaka redova

- Uključuje i isključuje prikaz pomaka redova levo od okna.

Prikaz Prikaz vrednosti ili znakova

- Određuje koje je od mogućih tumačenja bajtova prikazano, jedno od:

  - Vrednosti

  - Znakovi

  - Vrednosti i znakovi

Prikaz Kodiranje vrednosti

- Određuje kodiranje vrednosti, jedno od:

  - heksadekadno

  - dekadno

  - oktalno

  - binarno

Prikaz Kodiranje znakova

- Određuje kodiranje znakova, jedno od datih u podmeniju.

Prikaz Bez neispisivih znakova

- Uključuje i isključuje prikaz nevidljivih znakova.. Ako su uključeni, na odgovarajućim mestima u koloni znakova prikazan je zamenski znak.

Prikaz Postavi bajtove po redu...

- Izaberite koliko se bajtova prikazuje po redu, podrazumevano je to 16.

Prikaz Postavi bajtove po grupi...

- Podrazumevano se heksadekadne vrednosti prikazuju u grupama od po 4 bajta. Ovom stavkom menija možete to promeniti.

Prikaz Dinamički raspored

- Zadaje pravila za raspored prikaza podataka. Ovim se definiše broj bajtova po jednom redu u zavisnosti od širine prikaza. Moguća pravila su:

  - Isključen: raspored je fiksiran na tekući broj bajtova po redu i ne prilagođava se izmenama veličine prikaza.

  - Prelamaj samo cele grupe bajtova: stavlja najveći mogući broj bajtova u jedan red, ali tako da održi grupe bajtova potpunim.

  - Uključen: isto kao prethodno, ali dopušta nepotpune grupe bajtova.

Prikaz Režim prikaza

- Određuje raspored prikaza, jedan od:

  - Kolone: vrednosti i tumačenja znakova prikazani su u klasičnom rasporedu, svako u svojoj zasebnoj koloni.

  - Vrste: znakovno tumačenje bajta prikazano je neposredno ispod vrednosnog tumačenja.

Ctrl Shift T Prikaz Podeli vodoravno

- Deli oblast trenutno fokusiranog prikaza na dva dela i dodaje kopiju tekućeg prikaza u novu, nižu oblast.

Ctrl Shift L Prikaz Podeli uspravno

- Deli oblast trenutno fokusiranog prikaza na dva dela i dodaje kopiju tekućeg prikaza u novu, desnu oblast.

Ctrl Shift R Prikaz Zatvori oblast prikaza

- Zatvara oblast trenutno fokusiranog prikaza.

Prikaz Režim prikaza

- Postavke prikaza mogu da se zasebno uskladište kao profil prikaza. Trenutno izabrani profil može da se ažurira neposredno u postavkama tekućeg prikaza, ili se na osnovu njih može napraviti novi profil. Profilima prikaza upravlja se u dijalogu na Postavke Upravljaj profilima prikaza....

#### Meni Prozori

Pruža spisak trenutnih prikaza. Odavde birate aktivan prozor.

#### Meni Obeleživači

Na isti niz bajtova može se postaviti više obeleživača. Svaki niz bajtova ima svoj skup obeleživača, koji je prikazan na dnu menija Obeleživači. Izborom obeleživača iz ovog menija pomerate kursor i prikaz za njega.

Obeleživači su za sada prolazni, tj. ne upisuju se kada zatvorite niz bajtova ili ceo program.

Ctrl B Obeleživači Dodaj obeleživač

- Obeleži lokaciju unutar niza bajtova.

Ctrl Shift B Obeleživači Ukloni obeleživač

- Uklanja tekući obeleživač. Ova naredba je raspoloživa samo ako je kursor na obeleženoj lokaciji.

Obeleživači Ukloni sve obeleživače

- Čisti spisak obeleživača.

Alt Up Obeleživači Na prethodni obeleživač

- Pomera kursor na prethodni obeleživač.

Alt Down Obeleživači Na sledeći obeleživač

- Pomera kursor na sledeći obeleživač.

#### Meni Alatke

Spisak instaliranih alatki, kroz koji se može uključiti i isključiti prikaz svake od njih. Detaljan opis svake alatke nalazi se u sekciji o alatkama.

#### Meni Postavke

Postavke Upravljaj profilima prikaza...

- Otvara dijalog za stvaranje, uređivanje i brisanje profila prikaza, kao i postavljanje podrazumevanog.

## Zasluge i licenca

Okteta

(program) © 2006–2012, Fridrih V.H. Kosebau &Friedrich.Kossebau.email;.

(dokumentacija) © 2008, 2010, Fridrih V.H. Kosebau &Friedrich.Kossebau.email;, Aleksander Ričardson &Alex.Richardson.email;.

Preveo Dragan Pantelić falcon-10@gmx.de.

&underFDL; &underGPL;
&documentation.index;